both NaN == NaN and NaN === NaN evaluate to false
来自MDN
NaN
是一个特殊值,您可以将其视为Infinity
。 Infinity
不等于另一个Infinity
,因为它有 NO DEFINED VALUE 。
我不能比MDN更好......
与JavaScript中的所有其他可能值不同,不可能依赖等于运算符(==
和===
)来确定值是否为NaN
,因为两者都是NaN == NaN
和NaN === NaN
评估为false
。因此,isNaN
函数的必要性。