【发布时间】:2020-03-01 03:50:02
【问题描述】:
在 Javascript 控制台中处理字符串和数字时,我注意到一些奇怪的事情。这样做:
"$99.9" += 0
导致SyntaxError: Invalid left-hand side in assignment。但是,如果我将字符串分配给一个变量,则行为会有所不同(并且更符合我们对 Javascript 的期望/接受)
let str = "$99.9"
str += 0 // => "$99.90"
我熟悉导致第二个示例中的行为的原因(以及导致许多其他 Javascripty 事情发生的原因),但第一个示例中的错误让我感到惊讶。在第一个阻止通常的 Javascript 行为的示例中发生了什么?
【问题讨论】:
标签: javascript string types casting concatenation