Moh*_*waj 3 javascript nan undefined
null + 1 = 1
undefined + 1 = NaN
我无法理解这背后的逻辑是什么.两者都不应该返回相同的结果吗?
基本上,因为这是语言规范所说的 - 看ToNumber:
Type Result
Null +0
Undefined NaN
Run Code Online (Sandbox Code Playgroud)
而且NaN+任何东西都是NaN
从语言的角度来看,这可能是有意义的:null意味着一个显式的空值,而undefined意味着一个未知的值.在某种程度上 - 零是"数字空值",因为它对于加法是中性的.那就是说 - 这是相当长的一段时间,我认为这通常是糟糕的设计.在真正的JavaScript代码中 - 您几乎从不添加null任何内容.
| 归档时间: |
|
| 查看次数: |
510 次 |
| 最近记录: |