
JavaScript中,NaN是一个特殊的数字值(typeof NaN的结果为number),是not a number的缩写,表示不是一个合法的数字。
1. NaN的产生:
Number('abc') // NaN
Number(undefined) // NaNMath.log(-1) // NaN Math.sqrt(-1) // NaN Math.acos(2) // NaN
NaN
NaN + 1 // NaN 10 / NaN // NaN
2. 注意点
NaN是唯一一个和自身不相等的值:
立即学习“Java免费学习笔记(深入)”;
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
}【相关推荐:javascript视频教程、编程视频】
以上就是一文聊聊JavaScript中的NaN的详细内容,更多请关注php中文网其它相关文章!
java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号