js-带操作的赋值表达式

带操作的赋值表达式为:

a op= b

这里op代表一个运算符,这个表达式等价于:

a = a op b

 

这里需要特别注意:在第一个表达式中,表达式a计算了一次,而在第二个表达式中,表达式a计算了两次。所以,只有在a没有副作用的情况下,这两个表达式才是等价的。

不等价的例子:

arr[i++] *= 2;

arr[i++] = arr[i++] * 2;

posted @ 2018-02-04 20:51  lishidefengchen  阅读(685)  评论(0)    收藏  举报