随着 JavaScript 不断发展,新的语言特性也不断被加入其中。ES11(也叫 ECMAScript 2020)是 JavaScript 最新的一个版本,其中有一个新特性就是复合运算符。在本文中,我们将详细介绍 ES11 中如何正确使用复合赋值运算符,并提供示例代码。
什么是复合赋值运算符?
在介绍复合赋值运算符之前,我们先了解一下赋值运算符。在 JavaScript 中,我们可以使用等号(=)来给变量赋值。例如:
let x = 2;
上面的代码中,我们将数字 2 赋值给了变量 x。那么复合赋值运算符是什么呢?简单来说,它是赋值运算符和其他运算符的结合体。例如,下面的代码将变量 x 的值加上 5:
x += 5;
上面的代码等同于下面的代码:
x = x + 5;
除了加法运算符,复合赋值运算符还可以和其他运算符结合使用,例如减法、乘法、除法、模运算等等。下面我们将一一介绍这些运算符的复合赋值形式。
加法
加法运算符的复合赋值形式为 +=。它可以将一个值加到变量中,并将结果赋给这个变量。例如:
let x = 3; x += 4; // x 的值变成 7
减法
减法运算符的复合赋值形式为 -=。它可以从一个值中减去另一个值,并将结果赋给变量。例如:
let x = 5; x -= 3; // x 的值变成 2
乘法
乘法运算符的复合赋值形式为 *=。它可以将一个值乘以另一个值,并将结果赋给变量。例如:
let x = 2; x *= 5; // x 的值变成 10
除法
除法运算符的复合赋值形式为 /=。它可以将一个值除以另一个值,并将结果赋给变量。例如:
let x = 10; x /= 2; // x 的值变成 5
取模
取模运算符的复合赋值形式为 %=。它可以将一个值取模另一个值,并将结果赋给变量。例如:
let x = 10; x %= 3; // x 的值变成 1
按位左移
按位左移运算符的复合赋值形式为 <<=。它可以将一个值按位左移指定的位数,并将结果赋给变量。例如:
let x = 7; x <<= 2; // x 的值变成 28
按位右移
按位右移运算符的复合赋值形式为 >>=。它可以将一个值按位右移指定的位数,并将结果赋给变量。例如:
let x = 28; x >>= 2; // x 的值变成 7
按位无符号右移
按位无符号右移运算符的复合赋值形式为 >>>=。它可以将一个值按位无符号右移指定的位数,并将结果赋给变量。例如:
let x = -7; x >>>= 2; // x 的值变成 1073741821
逻辑与
逻辑与运算符的复合赋值形式为 &=。它可以将一个值按位与另一个值,并将结果赋给变量。例如:
let x = 5; x &= 3; // x 的值变成 1
逻辑或
逻辑或运算符的复合赋值形式为 |=。它可以将一个值按位或另一个值,并将结果赋给变量。例如:
let x = 5; x |= 3; // x 的值变成 7
逻辑异或
逻辑异或运算符的复合赋值形式为 ^=。它可以将一个值按位异或另一个值,并将结果赋给变量。例如:
let x = 5; x ^= 3; // x 的值变成 6
总结
本文介绍了 ES11 中各种复合赋值运算符的使用方法,并提供了示例代码。复合赋值运算符可以简化代码,同时也可以使它更易于阅读和理解。但需要注意的是,过于频繁地使用复合赋值运算符可能会影响代码的可读性,因此需要根据实际情况进行选择。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/65a392baadd4f0e0ffbb6742