84669 person learning
152542 person learning
20005 person learning
5487 person learning
7821 person learning
359900 person learning
3350 person learning
180660 person learning
48569 person learning
18603 person learning
40936 person learning
1549 person learning
1183 person learning
32909 person learning
a = a + 1, a++, ++a ,a+=1区别在哪?
人生最曼妙的风景,竟是内心的淡定与从容!
a = a +1;
即最普通的写法,将a的值加1再赋给a;a+=1; 相当于 a = a+1;
a+=1;
a = a+1;
a++;
是先将a的值赋给一个变量, 再自增;
++a;
是先自增, 再把a的值给一个变量
a = a + 1 等同于 a += 1
a = a + 1
a += 1
举例说明新手秒懂
b = a++ 等同于b = a; a = a + 1;亦等同于b = a; a += 1;
b = a++
b = a;
a = a + 1;
a += 1;
b = ++a等同于a = a + 1; b = a;亦等同于a += 1; b = a;
b = ++a
从值上来看
a=a+1和a+=1是一样的
a=a+1
a+=1
a++可以理解为先返回了a的值(a先参与运算)再自增++a是先自增再参与运算//a在前那就a先参与运算再自增,++在前那就先自增再参与运算
a++
++a
var a = 1; console.log(a++) console.log(a)
var b = 1; console.log(++b) console.log(b)
歪个题
只用 a += 1
++a / --a 只在 for 循环中使用, 其他地方都不使用
即便是深刻理解回字的四种写法(深入到汇编层), 其作用也不大
如果a本身是字符串,a='1';a = a + 1和 a+=1 ,最终的到的a是'11' a++ 和 ++a ,最终得到的a是数值2
即最普通的写法,将a的值加1再赋给a;
a+=1;
相当于a = a+1;
是先将a的值赋给一个变量, 再自增;
是先自增, 再把a的值给一个变量
a = a + 1
等同于a += 1
举例说明新手秒懂
b = a++
等同于
b = a;
a = a + 1;
亦等同于
b = a;
a += 1;
b = ++a
等同于
a = a + 1;
b = a;
亦等同于
a += 1;
b = a;
从值上来看
a=a+1
和a+=1
是一样的a++
可以理解为先返回了a的值(a先参与运算)再自增++a
是先自增再参与运算//a在前那就a先参与运算再自增,++在前那就先自增再参与运算
歪个题
只用 a += 1
++a / --a 只在 for 循环中使用, 其他地方都不使用
即便是深刻理解回字的四种写法(深入到汇编层), 其作用也不大
如果a本身是字符串,a='1';
a = a + 1和 a+=1 ,最终的到的a是'11'
a++ 和 ++a ,最终得到的a是数值2