在 Javascript 中,如果我们将字符串与数字相乘,我们会得到NaN:
console.log("manas" * 5); // result is NaN
Run Code Online (Sandbox Code Playgroud)
那么为什么下面的代码会产生false而不是true?
console.log("manas" * 5 == NaN) // results false
Run Code Online (Sandbox Code Playgroud)
请改用该isNaN函数。
console.log(isNaN("manas" * 5));
Run Code Online (Sandbox Code Playgroud)
http://www.w3schools.com/jsref/jsref_isnan.asp
NaN,不是数字,是一种特殊类型值,用于表示不可表示的值。对于 JavaScript,NaN 可能会引起一些混乱,从它的 typeof 到比较的处理方式。
有几种运算可能会导致 NaN 结果。由于表示 NaN 的方法有很多种,因此一个 NaN 不等于另一个 NaN 是有道理的。