(NaN != NaN)和(NaN !== NaN)之间有什么区别?

12 浏览
0 Comments

(NaN != NaN)和(NaN !== NaN)之间有什么区别?

首先,我想提到我知道isNaN()Number.isNaN()的工作原理。我正在阅读David Flanagan的《JavaScript权威指南》,他给出了一个检查值是否为NaN的例子:

x !== x

只有当xNaN时,这将结果为true

但现在我有一个问题:为什么他使用严格比较?因为似乎

x != x

的行为是相同的。使用这两个版本都安全吗?还是我在JavaScript中遗漏了一些会使x !== x返回truex != x返回false的值?

0