跳到主要内容

JavaScript 的 isNaN() 方法详解

isNaN()函数检查一个值是否是NaN(非数字)

示例

let number = NaN;

// 检查number是否为NaN
let result = isNaN(number);
console.log("Is number a NaN?", result);

// 输出: Is number a NaN? true

isNaN()语法

isNaN()函数的语法是:

isNaN(value);

isNaN()参数

isNaN()函数接受:

  • value - 要测试的值。

isNaN()返回值

  • 如果参数是NaN,则返回true
  • 对于其他参数,返回false

示例:使用isNaN()

console.log(isNaN(NaN)); // true
console.log(isNaN(undefined)); // true

console.log(isNaN(643511)); // false
console.log(isNaN(null)); // false

// 隐式转换为数字
console.log(isNaN("3888.415")); // false
console.log(isNaN("210AA")); // true,因为Number("210AA")是NaN

console.log(isNaN("")); // false,因为Number('')是0

console.log(isNaN(new Date())); // false
console.log(isNaN(new Date().toString())); // true

输出

true;
true;
false;
false;
false;
true;
false;
false;
true;

注意:

  • isNaN()是一个顶级函数,不与任何对象关联。
  • 如果参数不是Number类型,值会首先被转换为NaN,然后进行检查。

推荐阅读: JavaScript isFinite()