首页 > 其他 > 详细

关于NaN

时间:2020-03-15 20:07:50      阅读:135      评论:0      收藏:0      [点我收藏+]

<1> NaN是什么

NaNnot a number 不是一个数值表示存储的数据的数据类型如果有非数值参与计算,结果就是 NaN.

     技术分享图片               技术分享图片    

如图所示,由于两个变量中存储的数据都不是数值(字符串),所以它的执行结果就是NaN

     技术分享图片           技术分享图片

如图所示,由于上方代码中使用的是加法运算,“+”加号有字符串拼接的作用,所以它的执行结果是将str1跟str2拼接,这是例外

<2> NaN == NaN的结果是什么

       技术分享图片     技术分享图片

上图所示,我们可以看出不论是直接比较NaN,还是利用等式比较它们的结果(结果就是NaN),NaN == NaN的执行结果都是flase

例外:当等式两边执行加法的时候,会出现字符串的拼接,此时的执行结果就会是true

<3> 为什么

JavaScript的规定, NaN表示的是非数字, 但是这个非数字也是不同的因此 NaN 不等于 NaN两个NaN永远不可能相等

 

<4> 总结

1.NaN虽然表示是一个非数字 , 但是一般是算术运算执行的结果因此NaN仍然是数值类型

2.执行运算时非加法运算,只要有NaN参与,执行结果都是NaN

如果是加法运算,有 NaN 执行字符串拼接操作都是数值执行加法运算

3.NaN永远不会等于NaNNaN == NaN 执行结果是false

JavaScript的规定, NaN表示的是非数字, 但是这个非数字也是不同的因此 NaN 不等于 NaN两个NaN永远不可能相等

关于NaN

原文:https://www.cnblogs.com/gnn0804/p/12499350.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!