Javascript-为什么isNaN(1+;null)返回false?
好吧,我正在浏览Mozilla Javascript参考,发现Javascript-为什么isNaN(1+;null)返回false?,javascript,coercion,Javascript,Coercion,好吧,我正在浏览Mozilla Javascript参考,发现 isNaN(1 + null) //false isNaN(1 + undefined) //true 我无法理解这背后的原因。从,当null转换为number时,它变为0。因此,0+1=1是有效数字,因此isNaN返回false 当undefined转换为Number时,它将变为NaNanynumber+NaN=NaN,因此isNaN返回true。从,当null转换为Number时,它变为0。因此,0+1=1是有效数字,因此is
isNaN(1 + null) //false
isNaN(1 + undefined) //true
我无法理解这背后的原因。从,当null
转换为number
时,它变为0。因此,0+1=1是有效数字,因此isNaN
返回false
当undefined
转换为Number时,它将变为NaN
anynumber+NaN=NaN
,因此isNaN
返回true。从,当null
转换为Number
时,它变为0。因此,0+1=1是有效数字,因此isNaN
返回false
当
undefined
转换为Number时,它将变为NaN
任意数字+NaN=NaN
,因此isNaN
返回true。+null==0
,+undefined==NaN
您是否尝试只打印1+null
的值?这就是基本原因。+null==0
,+undefined==NaN
您是否尝试只打印1+null
的值?这是最基本的原因。向上投票,但不是w3schools,你可以引用更准确的内容:@niki感谢你解释这一点。向上投票,但不是w3schools,你可以引用更准确的内容:@niki感谢你解释这一点。