Javascript 为什么语句“0<;0.5<;1`还原为假?

Javascript 为什么语句“0<;0.5<;1`还原为假?,javascript,boolean,Javascript,Boolean,我最近发现了,我可以用它来回答一个关于Math.random()的问题;也就是说,如果没有Math.floor()的帮助,它是否会生成0 ECMAScript规范指定0分组这样的比较不会做人们可能认为它会做的事情。ECMAScript规范指定0=0和

我最近发现了,我可以用它来回答一个关于
Math.random()
的问题;也就是说,如果没有
Math.floor()
的帮助,它是否会生成
0


ECMAScript规范指定
0分组
这样的比较不会做人们可能认为它会做的事情。ECMAScript规范指定0=0和<1,这对于随机生成非常常见。分组
这样的比较不会做人们可能认为它会做的事情ECMAScript规范指定0=0和<1,这对于随机生成非常常见。因此,如果
1<1.5
true
,而
true<2
true
,则
2
。。。。好的,我想我明白了。@Musixauce3000是的,就是这样。JavaScript代数运算符和比较运算符都是“左”和“右”两个操作数运算符,因此它们总是这样分组。这就是为什么
0<0.5<1<1.5
也返回
true
。。。因为它一次执行一个,例如:
true<1
false
所以
false<1.5
true
所以如果
1<1.5
true
,而
true<2
true
,那么
2
。。。。好的,我想我明白了。@Musixauce3000是的,就是这样。JavaScript代数运算符和比较运算符都是“左”和“右”两个操作数运算符,因此它们总是这样分组。这就是为什么
0<0.5<1<1.5
也返回
true
。。。因为它一次执行一个,例如:
true<1
false
所以
false<1.5
true
a < b < c
(a < b) < c
a < b && b < c