IF条件中的2个等式,如python

时间:2017-12-26 22:44:01

标签: javascript python if-statement while-loop triple-equals

我开始学习前端编程的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中使用双重均等?如果是的话,我错过了什么?

1 个答案:

答案 0 :(得分:4)

它是允许的,它完全按照你告诉它做的 - 它只是与你想要它要做的事情不一样。 i % 5 === i % 3 === 0(i % 5 === i % 3) === 0相同(因为===是左关联的)。 (i % 5 === i % 3)评估为truefalse,具体取决于i的值,而true === 0false === 0均为假,因此条件将为总是假的。