需要帮助理解Javascript中的+运算符

时间:2011-12-30 01:08:43

标签: javascript

为什么Javascript中有1 + + + 1 = 2

这种行为叫什么?它在某处记录了吗?

感谢。

2 个答案:

答案 0 :(得分:6)

这是因为间距。一元运算符+可以根据需要多次应用,因此表达式变为:

1 + (+(+1))

即,

1 + 1

。通常情况下,您似乎无法执行此操作,即1 + ++ 1将失败,但这是因为两个+被解析为前缀增量,在未在变量上使用时无效。以同样的方式,1 +++ 1失败,因为它被解析为1++ + 1,您无法增加1

答案 1 :(得分:1)

它被解析为......

1 + (+ (+ 1))

......显然评估为两个。