为什么NaN===NaN?
自述:
+0 === -0 //true
NaN === NaN // false
ANSWER:
首先,NaN是“Not a Number”的缩写,表示不是一个数字。
不是数字的范围就比较大了,所有无法转换成数字的值,在JS中都有用NaN表示,所以NaN === NaN的结果才是false,另外在ECMAScript标准文档中也写到了这句话:
to ECMAScript code, all NaN values are indistinguishable from each other.
(在这里强烈建议大家有空可以多看看开发文档)
翻译过来就是:对于ECMAScript代码,所有NaN都无法区分
不过如果判断一个值是不是NaN的话,有两个方法:
一个是全局定义的isNaN(),另一个是Number包装类上的静态方法Number.isNaN()
这两个方法的区别就是:
如果当前值是NaN,或者将其强制转换为数字后将是NaN,isNaN()方法返回true,Number.isNaN()方法返回false,所以一般来说判断一个值是不是NaN时,推荐使用后者Number.isNaN()
为什么NaN===NaN?相关推荐
- 解惑 [1, 2, 3].map(parseInt) 为何返回[1,NaN,NaN]
javascript中的parseInt与map函数都是常用的函数,可是 ["1", "2", "3"].map(parseInt) 为何返 ...
- 为什么NaN - NaN == 0.0与英特尔C ++编译器?
本文翻译自:Why does NaN - NaN == 0.0 with the Intel C++ Compiler? It is well-known that NaNs propagate in ...
- 什么是NaN,NaN==NaN?
NaN是JavaScript中的一种数据类型–number类型,他表示不是数字 例: function num(numm){console.log(numm);console.log(numm==nu ...
- NaN 是什么 NaN == NaN ?
NaN是一个值类型,同是也是一个数值.意思是Not A Number,这个都知道是什么意思.值比较特殊,特殊在于NaN是一个数值,是一个与任何数值都不相等的数值.在javascript中我们通过typ ...
- NaN == NaN 的结果是什么?
NaN是Not a Number的缩写,代表非数字值的特殊值,该属性用于指示某个值不是数字.如果有非数值参与计算,结果就是 NaN.NaN与自身不相等(NaN不与任何值相等) 在JavaScript中 ...
- 'CALayer position contains NaN: [nan nan]'异常
异常 Terminating app due to uncaught exception 'CALayerInvalidGeometry', reason: 'CALayer position con ...
- js根据时间戳获取日期失败,NaN-NaN-NaN NaN:NaN:NaN
function getDate(timestamp) {var myDate = new Date(timestamp * 1000);var month = myDate.getMonth() + ...
- NaN是什么?NaN == NaN 的结果是什么?为什么?
NaN虽然表示是一个非数字,但是数值类型. 1.两个变量中存储的数据,都不是数值,执行结果就是NaN. 例: 执行结果: 2.执行运算时 , 非加法运算 ,只要有NaN参与,执行结果都是NaN. 例: ...
- NaN是什么? NaN == NaN 的结果是什么?为什么?
NaN:全称为not a number,理解为不是一个数值.表示一个存储数据的数据类型. NaN == NaN 的执行结果为:false.代码与结果如下图: 原因: JavaScript的规定, Na ...
- NaN == NaN , NaN === NaN 为啥是false?
NaN == NaN or NaN === NaN 为什么都是false? 首先NaN是一个值类型,意思是not a number. 这个值比较特殊,特殊于是一个数值,一个和任何数值都不相等的数值. ...
最新文章
- Apache模块开发helloworld无错版
- 运动合成——机器学习技术
- 广告投手_测量投手隐藏自己的音高的程度
- mysql数据备份(windows,linux)
- 事务学习总结(2)——spring事务
- 程序员面试题之从字节截断谈起
- linux 755 777是什么权限,linux系统下644、755、777权限详解
- #565. 「LibreOJ Round #10」mathematican 的二进制(期望 + 分治NTT)
- python相关参考地址收藏
- sql server系统数据库,temp库的用途
- 又给人家当分母了,顺便介绍一下GIS领域的顶级国际会议
- GPS从入门到放弃(十三) --- 接收机自主完好性监测(RAIM)
- KITTI数据集评估方法小结
- Java Web开发后端常用技术汇总
- MSI设计一个1位二进制全减器
- 快速批量创建文件夹的方法
- 教务系统选课(抢课)技巧
- 记录微信公众号迁移的过程(使用微擎)
- Windows 消息大全
- 【矩阵论笔记】Hermit标准型
热门文章
- 导入maven项目pom报错
- 深度学习中的几个错误率和准确率
- MindSpore爱因斯坦求和约定API解析【mindspore.ops.Einsum】
- 柯文哲《生死的智慧》
- 爆笑:GIF 动画展示开发者的生活
- Spring Cloud 学习笔记(3 / 3)
- python入门交流群_python 初学者交流 | Running Snail
- Excel导入多个HTML,网页表格批量导入到excel表格数据-如何将多个网页上的数据批量导入EXCEL...
- 交互媒体专题设计结课实验报告
- “网络和拨号连接”图标丢失疑难解答