JavaScript - 赋值运算符

你好,有抱负的程序员们!今天,我们将一起深入探索JavaScript赋值运算符的精彩世界。如果你是编程新手,不用担心——我会一步一步地引导你,就像我多年来教导无数学生一样。让我们一起踏上这次编码冒险之旅!

JavaScript - Assignment Operators

JavaScript 赋值运算符

赋值运算符就像是编程中的劳模。它们帮助我们给变量赋值,这是编码的基本概念。你可以将变量想象成存储信息的盒子,而赋值运算符就是我们将东西放入这些盒子中的工具。

基本赋值运算符 (=)

最常见的赋值运算符是等号 (=)。它简单但强大。让我们来看一个例子:

let myAge = 30;
console.log(myAge); // 输出:30

在这个例子中,我们创建了一个名为 myAge 的变量,并给它赋值为30。然后 console.log 语句打印出这个值。

但等等,还有更多!赋值运算符能做的不仅仅是简单的赋值。让我们探索一些更令人兴奋的运算符!

算术赋值运算符

算术赋值运算符将数学运算与赋值结合起来。它们就像简写,使我们的代码更简洁、易读。

下面是算术赋值运算符的表格:

运算符 示例 等同于
+= x += y x = x + y
-= x -= y x = x - y
*= x *= y x = x * y
/= x /= y x = x / y
%= x %= y x = x % y
**= x **= y x = x ** y

让我们看看它们是如何工作的:

let score = 10;

score += 5; // score 现在是 15
console.log(score); // 输出:15

score -= 3; // score 现在是 12
console.log(score); // 输出:12

score *= 2; // score 现在是 24
console.log(score); // 输出:24

score /= 4; // score 现在是 6
console.log(score); // 输出:6

score %= 4; // score 现在是 2 (6除以4的余数)
console.log(score); // 输出:2

score **= 3; // score 现在是 8 (2的3次方)
console.log(score); // 输出:8

这难道不酷吗?我们在不写出完整的数学表达式的情况下,以各种方式操作了 score 变量。

JavaScript 位运算赋值运算符

现在,让我们进入稍微高级一点的领域:位运算赋值运算符。这些运算符执行位运算并将结果赋值给变量。别担心这听起来很复杂——我会为你详细解释!

下面是位运算赋值运算符的表格:

运算符 示例 等同于
&= x &= y x = x & y
|= x |= y x = x | y
^= x ^= y x = x ^ y
<<= x <<= y x = x << y
>>= x >>= y x = x >> y
>>>= x >>>= y x = x >>> y

让我们看几个例子:

let bitwiseNum = 5; // 二进制:0101

bitwiseNum &= 3; // 二进制:0101 & 0011 = 0001
console.log(bitwiseNum); // 输出:1

bitwiseNum |= 6; // 二进制:0001 | 0110 = 0111
console.log(bitwiseNum); // 输出:7

在这些例子中,我们执行了位与 (&) 和位或 (|) 运算。这就像是计算机的秘密代码!

JavaScript 移位赋值运算符

移位赋值运算符是位运算家族的一部分,但它们值得特别关注。它们将数字的位向左或向右移动并将结果赋值给变量。

我们已经在之前的表格中看到了它们,但让我们聚焦于它们:

运算符 示例 等同于
<<= x <<= y x = x << y
>>= x >>= y x = x >> y
>>>= x >>>= y x = x >>> y

下面是如何使用它们:

let shiftNum = 8; // 二进制:1000

shiftNum <<= 1; // 向左移位1位,二进制:10000
console.log(shiftNum); // 输出:16

shiftNum >>= 2; // 向右移位2位,二进制:0100
console.log(shiftNum); // 输出:4

移位就像是在数字中移动数字,但以二进制的形式。它是一些类型计算中的强大工具!

JavaScript 逻辑赋值运算符

最后但同样重要的是,让我们谈谈逻辑赋值运算符。这些是JavaScript中的相对较新的添加,于ES2021中引入。它们将逻辑运算与赋值结合起来。

下面是逻辑赋值运算符的表格:

运算符 示例 等同于
&&= x &&= y x && (x = y)
||= x ||= y x || (x = y)
??= x ??= y x ?? (x = y)

让我们看看它们是如何工作的:

let a = true;
let b = false;

a &&= 5; // a 仍然是 true,所以它变成了 5
console.log(a); // 输出:5

b ||= 10; // b 是 false,所以它变成了 10
console.log(b); // 输出:10

let c;
c ??= 15; // c 是 undefined,所以它变成了 15
console.log(c); // 输出:15

这些运算符非常适合设置默认值或条件更新变量。

就这样!我们已经探索了JavaScript赋值运算符的世界。记住,熟能生巧。尝试在您自己的代码中使用这些运算符,很快它们就会变得习以为常。祝编码愉快,未来的程序员们!

Credits: Image by storyset