NaN评估背后的逻辑是什么?

时间:2014-05-26 17:20:50

标签: javascript nan logical-operators

您能解释一下javascript中NaN的逻辑评估吗?

NaN==NaN   (false)
!NaN==!NaN (true)
NaN!=NaN   (true)
NaN==false (false)
NaN==true  (false)

我在这里有点意外......

1 个答案:

答案 0 :(得分:3)

因为这就是规范所说的。

具体而言,IEE浮点规范表明NaN不等于自己 因此,在Javascript中,没有NaN可以相等的值。

!NaNtrue,因为NaN是假值。

这使您的所有示例都显而易见。