好吧,我正在浏览Mozilla Javascript Reference并发现..
isNaN(1 + null) //false
isNaN(1 + undefined) //true
我无法理解这背后的原因。
答案 0 :(得分:6)
从https://www.w3schools.com/js/js_type_conversion.asp开始,当null
转换为number
时,它变为0.因此,0 + 1 = 1,它是有效数字,因此isNaN
返回{ {1}}。
当false
转换为数字时,它变为undefined
。 NaN
,Any Number + NaN = NaN
返回true。