概述
在JavaScript的数字类型Number中还有个特殊的存在NaN,为什么NaN!==NaN?我们如何判断一个值是否等于NaN呢?
NaN全称是Not-A-Number(不是一个数字),我们可以通过Number.NaN来获得一个NaN,在类型转换失败时,我们常常会得到一个NaN,需要注意的是,NaN是JS中唯一一个自身不相等的存在。
利用 NaN 是唯一个不等于任何自身的特点
var a=NaN;
a==a; //false
1.NaN 不是一个数字且数据类型为 number,而且不等于自身
可直接采用内置方法 isNaN
function isNaN(n) {
if (n !== n) {
return true;
} else {
return false;
}}
2.ES6中提供了一个Number.isNaN()方法用于判断一个值是否严格等于NaN:
Number.isNaN(NaN)//true
3.与isNaN最大的区别是,Number.isNaN不存在转换类型的行为,这点是最大的不同:
isNaN(NaN) //true
Number.isNaN(NaN) //true
4.object.is 方法
console.log(Object.is("a", NaN));
console.log(Object.is(1, NaN));
console.log(Object.is(NaN, NaN));
最后
以上就是矮小秀发为你收集整理的如何判断 NaN?的全部内容,希望文章能够帮你解决如何判断 NaN?所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复