我在这里有一个简单的fizzbuzz:
var num = 1;
while (num <= 20) {
switch(true){
case(num%3 === 0 && num%5 === 0):
console.log('fizzbuzz');
break;
case(num%3 === 0):
console.log('fizz');
break;
case(num%5 === 0):
console.log('buzz');
break;
default:
console.log(num);
}
num++;
}
在此行中的模数后与0
进行比较的含义是什么:num%3===0
?
为什么它只是num%3
?
答案 0 :(得分:1)
如果您保留num%3
而不是num%3===0
,意义变化完全不能进入其中一个案例,它应该被3整除,所以如果它不是,它将进入默认情况,因为num%3不会等于0。
简而言之,我们使用%运算符来检查它是否可被整除,就好像答案出现为0,当且仅当它是可整除的,即余数为0
答案 1 :(得分:0)
假设num = 1,num%3等于1.因此,如果您评估response
,它将评估为true。而如果您评估if(num%3)
是否将评估为false。
此外,===确保您在不同类型的情况下不允许任何值,但在这种情况下,==和===不会产生太大差异。