1 + undefined = ?
- 首先,String(undefined) 得到字符串“undefined”
- 二、1+“未定义”=“1未定义”
怎么了?
我在 chrome 控制台中运行它,它返回NaN
。
你能解释一下结果吗?
我认为它应该是“1undefined”。tks
1 + undefined = ?
怎么了?
我在 chrome 控制台中运行它,它返回NaN
。
你能解释一下结果吗?
我认为它应该是“1undefined”。tks
NaN
是Number
操作失败的结果。
1 + undefined // NaN
"1" + undefined // "1undefined"
1 + "" + undefined // "1undefined"
1 + ("" + undefined) // "1undefined"
typeof NaN // "number"
typeof undefined // "undefined"
NaN === NaN // false (it's not reflexive!)
undefined === undefined // true (it's reflexive)
NaN.toString() // "NaN"
NaN
表示不是预期数字的数字。任何数字操作NaN
也将导致NaN
。
您期望字符串连接,但只有当您至少有一个字符串时才会发生这种情况。在您的示例中,没有什么是字符串。1
不是字符串,undefined
也不是字符串。
1 + 未定义 = NaN
当你这样做时,1 + "undefined"
你将 1 连接到 String"undefined"
导致字符串"1undefined"
undefined is nothing or like Null in other language (variable is not set)
在 Javascript 中,null 是值的预期缺失(在某处设置为 null),而 undefined 是值的意外缺失(从不设置)
你想要完成什么?