a的值自加1后没有再付给a,为啥最后a的值也变了呢?
a++与++a 共同的结果就是a自加1了。
区别举个例子:
var a = 5, b = 3, c;
c = a++ + b; //则a = 6, b = 3, c = 8,(a先与b做相加运算,再自加1)
c = ++a + b; //则a = 7, b = 3, c = 10,(a先自加1,再与b做相加运算)
a++就是a=a+1
a=1; b=a++;这时候b为1; b=++a;这时候b为2;
a++:先赋值后自增;
++a:先自增后赋值;
处在a++中a的值维持不变,在下面使用a就会使a值改变,注意与++a区别
a++意思是a+1赋值给a;a已经变了;
你没注意到++a么,++是自增,所以a得值变了。
你没理解++a的意思,++a相当于a=a+1;
a++就相当于a=a+1