简述JavaScript 中的 NaN 是什么?
参考答案:
在 JavaScript 中,NaN
是一个特殊的值,代表 "Not a Number"(非数字)。当你尝试进行一些数学运算,但结果不是一个合法的数字时,JavaScript 就会返回 NaN
。
例如,如果你尝试将一个字符串(除非它是一个有效的数字字符串)除以一个数字,或者对一个非数字值执行数学运算,那么结果就会是 NaN
。
以下是一些返回 NaN
的示例:
0 / 0; // NaN
"abc" * 10; // NaN
Math.sqrt(-1); // NaN
需要注意的是,NaN
是一个特殊的值,它与其他任何值(包括其自身)比较都会返回 false
。为了检查一个值是否是 NaN
,你应该使用 isNaN()
函数或 Number.isNaN()
函数。
例如:
console.log(NaN == NaN); // false
console.log(isNaN(NaN)); // true
console.log(Number.isNaN(NaN)); // true
注意:isNaN()
函数在某些情况下可能会产生误导性的结果,因为它也会将某些非数字字符串(如 "abc")解析为数字,然后返回 false
。因此,对于更严格的检查,建议使用 Number.isNaN()
。