2 个 IF 条件等式,如 python

2 equalities on an IF conditional like in python

我开始学习 javascript 前端编程,python 我要完全学习的第一门语言。

所以我正在尝试解决 while 循环练习,控制台记录 50-300 中被 5 和 3 整除的每个数字。

所以在 python 我会这样做:

i = 50
while i < 301:
    if i % 5 == i % 3 == 0:
        print(i)
    i += 1

而且工作完美。我知道您可以使用 and and 运算符,但这个问题的重点是避免使用它。

所以我在 javascript

中尝试了同样的事情
var i = 50;
while (i < 301){
    if (i % 5 === i % 3 === 0){
        console.log(i);
    }
    i ++;
}

不知怎么的,这行不通。但是,对于 && 运算符,它确实如此。 javascript 中的双重相等是不允许的吗?如果是,我错过了什么?

它是允许的,并且它完全按照您的指示执行 - 只是这与您想要的不一样] 它来做。 i % 5 === i % 3 === 0(i % 5 === i % 3) === 0 相同(因为 === 是左结合的)。 (i % 5 === i % 3) 根据 i 的值评估为 truefalse,并且 true === 0false === 0 均为假,因此条件将总是假的。