var x = 3;
var y = x++;谁能告诉我为什么var y = 3和x++ = 4。
因此,我假设x++ = 4是y = 4,但事实并非如此。
这个虚拟人需要帮助理解为什么y is not 4但是3
发布于 2019-02-24 20:29:04
因为var y = x++;意味着将x的值分配给y,然后将x的值增加1。
同样,var y = ++x;也会有相反的含义。x 增量,首先是和,然后将其分配给y。
所以。
x = 3
var y = x++; //means y = 3, x = 4;和
x = 3
var y = ++x; //means y = 4, x = 4;发布于 2019-02-24 20:25:43
x++ =>变量后面的++是增量后运算符。这意味着变量使用原始值,然后在操作后增加值。
var x=3;
var y=x++;
console.log(y)
类似地,有一个预增量运算符,它先递增值,然后使用该值。
var x=3;
var y=++x;
console.log(y)
基本上是++x:加载x,增量,使用。x++:加载x,使用,增量。这就是为什么x++仍然给出3的原因。这些值首先被使用,然后递增。
发布于 2019-02-24 20:43:36
因为++是在x:javascript增量和递减之后
当在操作数之后使用增量/递减运算符时,该值将在操作数增加/减少之前返回。
若要在返回值之前创建值,请将++放在变量名称++x之前:
var x = 3;
var y = x++;
console.log(x,y)
var a = 3;
var b = ++a;
console.log(a,b);
https://stackoverflow.com/questions/54856132
复制相似问题