我开始学习前端编程的javascript,将python作为我完全学习的第一语言。
所以我试图解决while循环问题,控制台记录50-300中可分为5和3的每个数字。
所以在python中我会这样做:
i = 50
while i < 301:
if i % 5 == i % 3 == 0:
print(i)
i += 1
完美无瑕。我知道你可以使用and
运算符,但这个问题的重点是避免使用它。
所以我在javascript中尝试相同的东西
var i = 50;
while (i < 301){
if (i % 5 === i % 3 === 0){
console.log(i);
}
i ++;
}
不知怎的,不行。但是,使用&&
运算符可以。是不允许在javascript中使用双重均等?如果是的话,我错过了什么?
答案 0 :(得分:4)
它是允许的,它完全按照你告诉它做的 - 它只是与你想要它要做的事情不一样。 i % 5 === i % 3 === 0
与(i % 5 === i % 3) === 0
相同(因为===
是左关联的)。 (i % 5 === i % 3)
评估为true
或false
,具体取决于i
的值,而true === 0
和false === 0
均为假,因此条件将为总是假的。