JS中++i和i++有什麼區別?

【首先】從自身來看,++i 和 i++都 等同於 i = i + 1;

【但是一般情況下】,它們都是跟賦值聯系在一起。

比如:

var a ;

a = i ++ //將i的值賦給a , 即a = i,之後再執行i = i + 1;

a = ++ i //將i+1 的值賦給a,即a = i + 1 ,之後再執行i = i + 1;

【總結】:

1:後置++ 是將自身的值賦給變量,之後自身再加1;

2:前置++ 是將自身+1 後的值賦給變量,同時自身加1;

<script>
  var a = 1;
  b = a ++;
  console.log('a='a + '  ' + 'b='b); //  a = 2 , b = 1
</script>
<script>
  var a = 1 ;
  b = ++a ;
  console.log('a=' + a + '   ' +'b=' + b)//a = 2 b=2


</script>

【另外】 i++不能為左值,++i可以

You May Also Like