JavaScript中的模问题
在codecademy上进行一些实践,遇到了以下问题:因此,如果数字可以被3整除,那么目标是打印Fizz。如果数字可被5整除,则发出嗡嗡声。如果数字可以被3和5整除,就会发出嘶嘶声 这是我的代码,我认为我是对的,但当我运行它时,他们告诉我,我的代码不是100%准确。正在查看此代码的任何替代方案,或者可能存在的问题。。。 代码: 如果要停止执行其他条件,则需要使用else:JavaScript中的模问题,javascript,Javascript,在codecademy上进行一些实践,遇到了以下问题:因此,如果数字可以被3整除,那么目标是打印Fizz。如果数字可被5整除,则发出嗡嗡声。如果数字可以被3和5整除,就会发出嘶嘶声 这是我的代码,我认为我是对的,但当我运行它时,他们告诉我,我的代码不是100%准确。正在查看此代码的任何替代方案,或者可能存在的问题。。。 代码: 如果要停止执行其他条件,则需要使用else: for (var i = 1; i <= 20; i++) { if (i % 5 === 0 &&a
for (var i = 1; i <= 20; i++) {
if (i % 5 === 0 && i % 3 === 0) {
console.log("FizzBuzz");
} else if (i % 3 === 0) {
console.log("Fizz");
} else if (i % 5 === 0) {
console.log("Buzz");
} else {
console.log(i);
}
}
它可以很容易地在一个班轮
for (i = 1; i <= 20; i++) {
console.log(i%3?(i%5?i:'buzz'):(i%5?'fizz':'fizzbuzz'));
};
首先,使用else-if可以避免打印这两种格式。似乎您不理解这些要求。在常见的fizzbuzz问题中,目标是每个数字只打印其中一个。我认为每个数字只能打印一个结果。您的代码为一个数字提供了多个输出,如果多个条件匹配可能的副本,那么'else if'会阻止打印所有条件…我仍然遇到相同的问题:哎呀,再试一次。看起来你打印的项目数量不对。@EdwardK。对因为你想把循环运行20次,简洁明了。您是如何避免==到0位的?我使用的是Boolean在Javascript中处理falsy和truthy语句的方式。e、 g.9%3是错误的,因为它的结果是0。因此,ifi%3的结果实际上与ifi%3相同=很好,但是你能用这一点避免if-else语句吗?你输入了密码?是的,就是所谓的三元运算符。a>b?a:b;实际上与ifa>b{return a;}else{return b}相同;
for (i = 1; i <= 20; i++) {
console.log(i%3?(i%5?i:'buzz'):(i%5?'fizz':'fizzbuzz'));
};
for (i = 1; i < 21; ++i) {
console.log(i+": "+(i%3?(i%5?i:'buzz'):(i%5?'fizz':'fizzbuzz')));
};