-
=
号是赋值运算,即返回符号右边的结果,同时将结果赋值给符号左边的变量,考虑下面代码的运行结果:赋值运算
b = 1 + 1
,做了两件事,先返回符号右边的结果,即2,这个2将参与a = 1 + 2
的计算,同时将2赋值给符号左边的变量b,所以输出结果是a的值为3,b的值为2; -
a += b
等价于a = a + b
,同理-= /= *= %= **=
也是如此,考虑下面代码的运行结果:简略赋值运算符
+=
和赋值运算符的优先级是一样的,得先进行符号右边的计算,并返回结果,之后才参与符号的计算,即a = a + (1 + 1)
,所以输出结果是a的值为3; -
空赋值
??=
,只有当变量是null或者undefined时,才会进行赋值,否则不赋值