我正在开发一个 node.js 站点,我做了一个复制和粘贴错误,导致以下行(针对这个问题进行了简化):
var x = "hi" + + "mom"
它不会崩溃并且 x = NaN。现在我已经修复了这个错误,我很好奇这里发生了什么,因为如果我删除 + 号之间的空格,我会得到一个错误(语法错误:无效的增量操作数)
我的问题是:有人可以向我解释语句中发生了什么以及没有任何东西(+ 号之间的空格)将其从错误更改为 NaN?
附注。我不确定这应该放在这里还是 programers.stackoverflow.com。如果我在错误的网站上发帖,请告诉我。
最佳答案
它被这样解释:
var x = "hi" + (+"mom")
前缀
+
试图将字符串强制转换为数字。 Number('mom')
是 NaN
,所以 +'mom'
也是 NaN
。关于javascript - 关于字符串连接的令人困惑的 JavaScript 语句,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27534518/