Javascript返回var ++

时间:2013-10-09 02:55:04

标签: javascript return operator-precedence

所以我想知道为什么

var x=5
function foo(){
  return x++
}
foo()

返回5和

var x=5
function foo(){
  return ++x
}
foo()

返回6.

是因为++运算符的优先级排除了它在返回之前执行 - 即。优先级是(return x)++?或者有什么棘手的事情发生?

1 个答案:

答案 0 :(得分:8)

这是前/后增量。这就是运营商的工作方式。 ++var pre 增量,这意味着值在返回之前递增,var++ post 增量,其中值在返回后递增。

您可以找到有关这些语义的更多详细信息 here