为什么是null> 3假和null<节点3是真的吗?

时间:2016-07-22 22:20:22

标签: javascript node.js

为什么是null> 3假和null<节点3是真的吗?

$ node
> null > 3
false
> null < 3
true

2 个答案:

答案 0 :(得分:6)

因为它在应用less / greater than运算符时强制null0

Section 11.8.5 of the spec表示<>运算符会在左侧值ToNumber上调用null

Section 9.3 of the spec表明ToNumber会将null翻译为0

答案 1 :(得分:0)

我不是100%肯定,但是当使用比较器时似乎null为0但奇怪的是null == 0并且null === 0返回false但是null&lt; = 0在null&lt;时返回true 0返回false。

> null == 0 
false
> null === 0
false
> null <= 0
true
> null < 0
false
> null < -1
false