null === undefined
:不成立,他们的值相等但是数据类型不同
2.NaN与isNaN
-
1.NaN:Not a Number 不是一个数字
-
(1)NaN是number数据类型中一个特殊的数值,是数学计算错误得到的一个结果
-
例如:
'张三' - 100
,在数学上这是一种错误的计算,它的结果就是NaN -
(2)NaN与任何数字都不等,包含它本身
-
(3)NaN与任何数字计算得到的都是NaN
-
2.isNaN(数据):检测一个数据是不是NaN 得到的结果是布尔类型
-
例如:
isNaN(NaN)
,结果为true -
例如:
isNaN(123)
,结果为false,表示123不是NaN -
3.number类型浮点数(小数)精度丢失问题
-
(1)小数在进行数学计算时,会有一定的误差,这是计算机本身的bug,不仅是js语言,其他语言也有这个问题
-
(2)解决方案:不要让两个小数比较大小,这种情况一般不会影响正常开发