为什么NaN === NaN为假?[重复]

为什么NaN === NaN返回false Javascript?

> undefined === undefined

true

> NaN === NaN

false

> a = NaN

NaN

> a === a

false

在文档页面上,我看到以下内容:

## 针对NaN的测试

相等运算符(=====)不能用于测试的值NaN。使用isNaN代替。

有没有参考资料可以回答这个问题?不客气。

回答:

:因为JS规范是这样说的:

  • 如果Type(x)是Number,则

    • 如果x为NaN,则返回false。
    • 如果y为NaN,则返回false。


:浮点数的IEEE 754规范(所有语言都将其用于浮点)指出NaN绝不相等。

以上是 为什么NaN === NaN为假?[重复] 的全部内容, 来源链接: utcz.com/qa/398932.html

回到顶部