JS中的NaN产生是怎样,如何辨别NaN
Admin 2022-11-14 群英技术资讯 511 次浏览
JavaScript中,NaN
是一个特殊的数字值(typeof NaN
的结果为number
),是not a number
的缩写,表示不是一个合法的数字。
1. NaN的产生:
Number('abc') // NaN
Number(undefined) // NaN
登录后复制
Math.log(-1) // NaN
Math.sqrt(-1) // NaN
Math.acos(2) // NaN
登录后复制
NaN
NaN + 1 // NaN
10 / NaN // NaN
登录后复制
2. 注意点
NaN
是唯一一个和自身不相等的值:
NaN === NaN // false
登录后复制
3. 如何辨别NaN
我们可以使用全局函数isNaN()
来判断一个数值是不是一个非数字(并不是用来判断是不是NaN
这个值):
isNaN(NaN) // true
isNaN(10) // false
登录后复制
为什么说isNaN()
不是用来判断是不是NaN
这个值的呢?因为isNaN
对非数字不起作用,它首先做的就是把这些值转换成数字,转换的结果可能为NaN
,然后函数会错误地返回true
:
isNaN('abc') // true
登录后复制
所以我们想确定这个一个值是为NaN
,可以使用以下两种方法:
isNaN()
和typeof
结合来判断function isValueNaN(value) {
return typeof value === 'number' && isNaN(value)
}
登录后复制
NaN
是唯一有这样特征的值)function isValueNaN(value) {
return value !== value
}
关于“JS中的NaN产生是怎样,如何辨别NaN”的内容今天就到这,感谢各位的阅读,大家可以动手实际看看,对大家加深理解更有帮助哦。如果想了解更多相关内容的文章,关注我们,群英网络小编每天都会为大家更新不同的知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章给大家分享的是用JS实现静态的验证码干扰效果。小编觉得挺实用的,因此分享给大家做个参考,文中示例代码介绍的非常详细,感兴趣的朋友接下来一起跟随小编看看吧。
在jquery中,可以使用hasClass()方法来判断是否有某个class,该方法的作用就是检查被选元素是否包含指定的class,语法“$(selector).hasClass(classname)”。
本文主要介绍了el-upload多选文件上传报错解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
本文详细讲解了JS实现贪吃蛇小游戏的过程,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
这篇文章主要介绍了vue实现下拉框二级联动效果,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008