js 中a++和++a的区别以及理解使用

文章2019-06-211,341 人已阅来源:回忆,回不去的记忆

先说一下原理吧,a++是表示先把值赋给其他为数字类型的变量,自己在+1。而++a 是自己先+1,再把值赋给数字类型的变量;其实原理还是运算符的优先级不同。

举个列子说明一下比如一以下代码

var a=1; 
var b=a++;//此时输出结果b为1,a为2

因为=的运算符优先级大于a++这种形式的运算符,所以先运算=。所以先b先等于a,故b的值为1。a再++ 所以a的值经过运算为2。

同理,来说说++a

var a=1; 
var b=++a;//此时输出结果b为2,a为2

因为等于的运算符优先级小于++a这种形式的运算符,所以先运算++a,所以a先加1,然后结果为2。再把值给b 所以b值也为2。

来源:回忆,回不去的记忆