js区分NaN和字母

NaN 属性用于引用特殊的非数字值,在大多数场景中我们使用isNaN即可判断变量是否为NaN。

console.log(Number.isNaN('1')); // false
console.log(Number.isNaN('a')); // true
console.log(Number.isNaN(NaN)); // true

但是字母在isNaN方法中返回也是true,这样就导致无法区分NaN和字母的场景:
这个场景我们可以使用es6中的Number.isNaN来判断,返回结果分别如下:

console.log(Number.isNaN('a')); // false
console.log(Number.isNaN(NaN)); // true

你可能感兴趣的:(js区分NaN和字母)