操作符用于执行各种操作,如计算、比较、逻辑运算等。掌握操作符是编写高效、功能丰富的 JavaScript 代码的关键。
4. 操作符
JavaScript 中的操作符可以分为以下几类:算术操作符、比较操作符、逻辑操作符、赋值操作符、位操作符以及其他操作符。下面详细介绍每一类操作符。
4.1 算术操作符
用于执行基本的数学运算。
-
加法 (
+
)let sum = 5 + 3; // 8
-
减法 (
-
)let difference = 5 - 3; // 2
-
乘法 (
*
)let product = 5 * 3; // 15
-
除法 (
/
)let quotient = 5 / 3; // 1.666...
-
取余 (
%
)let remainder = 5 % 3; // 2
-
幂运算 (
**
)let power = 2 ** 3; // 8
-
自增 (
++
) 和自减 (--
)let x = 10; x++; // x 变为 11 x--; // x 变回 10
4.2 比较操作符
用于比较两个值,并返回布尔值 (true
或 false
)。
-
等于 (
==
)let isEqual = (5 == '5'); // true(类型转换后相等)
-
全等 (
===
)let isStrictEqual = (5 === '5'); // false(不进行类型转换)
-
不等于 (
!=
)let isNotEqual = (5 != '5'); // false(类型转换后相等)
-
不全等 (
!==
)let isStrictNotEqual = (5 !== '5'); // true(不进行类型转换)
-
大于 (
>
)let isGreater = (5 > 3); // true
-
小于 (
<
)let isLess = (5 < 3); // false
-
大于等于 (
>=
)let isGreaterOrEqual = (5 >= 5); // true
-
小于等于 (
<=
)let isLessOrEqual = (5 <= 10); // true
4.3 逻辑操作符
用于执行逻辑运算,常用于条件判断和布尔值操作。
-
与 (
&&
)let andResult = (true && false); // false
-
或 (
||
)let orResult = (true || false); // true
-
非 (
!
)let notResult = !true; // false
-
逻辑与短路 (
&&
)let x = 0; let y = 10; let result = (x && y); // 0(因为 x 是 falsy,短路)
-
逻辑或短路 (
||
)let x = 0; let y = 10; let result = (x || y); // 10(因为 x 是 falsy,不短路)
4.4 赋值操作符
用于给变量赋值或更新变量的值。
-
赋值 (
=
)let x = 10;
-
加赋值 (
+=
)let x = 10; x += 5; // x = x + 5
-
减赋值 (
-=
)let x = 10; x -= 5; // x = x - 5
-
乘赋值 (
*=
)let x = 10; x *= 5; // x = x * 5
-
除赋值 (
/=
)let x = 10; x /= 5; // x = x / 5
-
取余赋值 (
%=
)let x = 10; x %= 3; // x = x % 3
-
幂赋值 (
**=
)let x = 2; x **= 3; // x = x ** 3
4.5 位操作符
用于对二进制数进行操作。
-
按位与 (
&
)let bitwiseAnd = 5 & 3; // 1(二进制:0101 & 0011 = 0001)
-
按位或 (
|
)let bitwiseOr = 5 | 3; // 7(二进制:0101 | 0011 = 0111)
-
按位异或 (
^
)let bitwiseXor = 5 ^ 3; // 6(二进制:0101 ^ 0011 = 0110)
-
按位取反 (
~
)let bitwiseNot = ~5; // -6(二进制:~0101 = 1010,即 -6)
-
左移 (
<<
)let leftShift = 5 << 1; // 10(二进制:0101 << 1 = 1010)
-
右移 (
>>
)let rightShift = 5 >> 1; // 2(二进制:0101 >> 1 = 0010)
-
无符号右移 (
>>>
)let unsignedRightShift = -5 >>> 1; // 2147483642(无符号右移)
4.6 其他操作符
-
三元操作符 (
? :
)- 定义:用于简化条件语句。结构为
condition ? expr1 : expr2
。
示例:
let age = 18; let canVote = age >= 18 ? 'Yes' : 'No'; console.log(canVote); // Yes
- 定义:用于简化条件语句。结构为
-
逗号操作符 (
,
)- 定义:用于将多个表达式组合成一个表达式,所有表达式依次求值,结果为最后一个表达式的值。
示例:
let result = (1, 2, 3); console.log(result); // 3
-
类型检查 (
typeof
)- 定义:返回操作数的数据类型。
示例:
console.log(typeof 123); // number console.log(typeof 'Hello'); // string
-
实例检查 (
instanceof
)- 定义:检查对象是否是某个构造函数的实例。
示例:
console.log([] instanceof Array); // true
5. 总结
- 算术操作符:用于基本的数学运算。
- 比较操作符:用于比较两个值并返回布尔值。
- 逻辑操作符:用于执行逻辑运算。
- 赋值操作符:用于赋值或更新变量的值。
- 位操作符:用于对二进制数进行操作。
- 其他操作符:包括三元操作符、逗号操作符、类型检查和实例检查。
理解和熟练使用这些操作符可以帮助你编写更加高效和清晰的代码。接下来,可以学习 控制结构,以便更好地控制程序的执行流程。