まあ、私はMozillaのJavaScriptのリファレンスを通過して、それを見つけています。..Javascript - なぜisNaN(1 + null)がfalseを返すのですか?
isNaN(1 + null) //false
isNaN(1 + undefined) //true
私はこの背後にある理由を理解することはできませんよ。 https://www.w3schools.com/js/js_type_conversion.aspから
まあ、私はMozillaのJavaScriptのリファレンスを通過して、それを見つけています。..Javascript - なぜisNaN(1 + null)がfalseを返すのですか?
isNaN(1 + null) //false
isNaN(1 + undefined) //true
私はこの背後にある理由を理解することはできませんよ。 https://www.w3schools.com/js/js_type_conversion.aspから
は、null
がnumber
に変換されるとき、それはしたがって0となる、1 = 0 + 1、それが有効な数値なので、isNaN
戻るfalse
。
undefined
をNumberに変換すると、NaN
になります。 Any Number + NaN = NaN
ですので、isNaN
がtrueを返します。
Upvoted、w3schoolの代わりに、より正確なものを参照することができます:https://www.ecma-international.org/ecma-262/6.0/#sec-tonumber –
@nikiこれを説明してくれてありがとう。 –
'+ null === 0'、' + undefined === NaN' – elclanrs
'1 + null'の値だけを印刷しようとしましたか?それが基本的な理由です。 – JJJ