我来自python背景,并在做了一个javascript项目之后遇到了一个问题
0< 5< 3
输出为真
我的猜测是它运行第一个操作符并完全忽略第二个操作符
和python它将呈现为false.
我不关心如何让这个工作,但奇怪的是它不在文件中唯一暗示做(0< x&& x< 3)并且不保持简单 猜猜我的问题是,如果有人能够回答这就是为什么这样的话
解决方法:
在JavaScript中,这个:
0 < 5 < 3
评估如下:
(0 < 5) < 3
这转化为:
true < 3
这进一步转化为此(因为在数值上下文中,true为1):
1 < 3
这是真的.
然而,Python的设计不同.如here所述,它解释了这一点:
0 < 5 < 3
相当于这个:
0 < 5 and 5 < 3
上面的表达式可以进一步转化为:
True and False
这是假的.