为什么在Javascript中undefined加undefined等于Nan
如何更好地理解未定义和null为什么在Javascript中undefined加undefined等于Nan,javascript,undefined,nul,Javascript,Undefined,Nul,如何更好地理解未定义和null console.log(未定义+5)//NaN console.log(null+5)//5 console.log(未定义+未定义)//NaN+运算符将一个整数的隐式强制应用于一个操作数,而另一个是数字 undefined被强制为NaN,因此console.log(undefined+5)和console.log(undefined+undefined)输出NaN null被强制为数字0,因此console.log(null+5)相当于console.log(
console.log(未定义+5)//NaN
console.log(null+5)//5
console.log(未定义+未定义)//NaN
+
运算符将一个整数的隐式强制应用于一个操作数,而另一个是数字
undefined
被强制为NaN
,因此console.log(undefined+5)
和console.log(undefined+undefined)
输出NaN
null
被强制为数字0
,因此console.log(null+5)
相当于console.log(0+5)
。因此,5被输出+
当另一个是数字时,运算符对操作数的整数应用隐式强制
undefined
被强制为NaN
,因此console.log(undefined+5)
和console.log(undefined+undefined)
输出NaN
null
被强制为数字0
,因此console.log(null+5)
相当于console.log(0+5)
。因此,输出5时第一个应给出NaN
而不是null
检查@NickParsons。我得到了类似于@Idon'tknow stackblitz showsnull
的东西,即使当你console.log(NaN)
时,它似乎也会在真正应该显示NaN
时显示null
(请查看你的浏览器控制台以获得更准确的结果)。@NickParsons是的,它给出了NaN
。我的整个问题都错了。因为闪电战。。谢谢..首先应该给出NaN
而不是null
检查@NickParsons。我得到了类似于@Idon'tknow stackblitz showsnull
的东西,即使当你console.log(NaN)
时,它似乎也会在真正应该显示NaN
时显示null
(请查看你的浏览器控制台以获得更准确的结果)。@NickParsons是的,它给出了NaN
。我的整个问题都错了。因为闪电战。。谢谢..在第节中指定在第节中指定