i++的例子:
var i=1;
console.log(i); // 输出1
var a=i++;
console.log(i); //输出2
console.log(a); //输出1
++i的例子:
var i=1;
console.log(i);
var a=++i;
console.log(i); //输出2
console.log(a); //输出2
可见:
* 使用i++时,i先将自身的值赋值给变量a,然后再自增1
* 使用++i时,i先将自身的值自增1,再将自增后的值赋值给变量a
原理:
运算符优先级
++作为后置递增时,优先级为16,而作为前置递增时,优先级为15
=作为赋值运算符时,优先级为3
所以,++会优先于=而执行