我对输出有点困惑。试过Javascript
var x = 1;
x = x++;
console.log(x); //Its output is 1
我认为它是2.因为我在后增量后进行打印。对此有何看法?
执行x = x++
的顺序如下:
x++
的评价以上规则are described here。规则表明x
在分配之前递增,而不是之后递增。
这是正确的。首先是赋值,然后是递增。相比:
var x = 1
var y = 1
x = x++
y = ++y
console.log(x, y)