算數運算子
算數運算子用於數值計算:
- 加法 (
+
):let sum = 5 + 3; // 8
- 減法 (
-
):let difference = 5 - 3; // 2
- 乘法 (
*
):let product = 5 * 3; // 15
- 除法 (
/
):let quotient = 6 / 3; // 2
- 取餘數 (
%
):let remainder = 5 % 3; // 2
- 指數 (
**
):let power = 2 ** 3; // 8
- 遞增 (
++
):let a = 5;
a++; // 6 - 遞減 (
-
):let b = 5;
b--; // 4
比較運算子
比較運算子用於比較兩個值:
- 等於 (
==
):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 isLesser = 5 < 3; // false
- 大於或等於 (
>=
):let isGreaterOrEqual = 5 >= 5; // true
- 小於或等於 (
<=
):let isLesserOrEqual = 5 <= 5; // true
賦值運算子
賦值運算子用於給變數賦值:- 簡單賦值 (
=
):let x = 5;
- 加法賦值 (
+=
):let x = 5;
x += 3; // 相當於 x = x + 3,結果是 8 - 減法賦值 (
-=
):let x = 5;
x -= 3; // 相當於 x = x - 3,結果是 2 - 乘法賦值 (
*=
):let x = 5;
x *= 3; // 相當於 x = x * 3,結果是 15 - 除法賦值 (
/=
):let x = 6;
x /= 3; // 相當於 x = x / 3,結果是 2 - 取餘賦值 (
%=
):let x = 5;
x %= 3; // 相當於 x = x % 3,結果是 2 - 指數賦值 (
**=
):let x = 2;
x **= 3; // 相當於 x = x ** 3,結果是 8
邏輯運算子
邏輯運算子用於布林值運算:
- AND (
&&
):let a = true && false; // false
- OR (
||
):let b = true || false; // true
- NOT (
!
):let c = !true; // false
位元運算子
位元運算子用於按位操作:
- AND (
&
):let result = 5 & 1; // 1,因為 0101 & 0001 = 0001
- OR (
|
):let result = 5 | 1; // 5,因為 0101 | 0001 = 0101
- XOR (
^
):let result = 5 ^ 1; // 4,因為 0101 ^ 0001 = 0100
- NOT (
~
):let result = ~5; // -6,因為 ~0101 = 1010(二進制補碼表示)
- 左移 (
<<
):let result = 5 << 1; // 10,因為 0101 << 1 = 1010
- 右移 (
>>
):let result = 5 >> 1; // 2,因為 0101 >> 1 = 0010
- 無符號右移 (
>>>
):let result = 5 >>> 1; // 2,因為 0101 >>> 1 = 0010
運算子的優先等級
運算子的優先等級決定了在表達式中運算子的計算順序。以下是 JavaScript 中一些常用運算子的優先等級,從高到低:
- 括號 (
()
) - 成員存取 (
.
,[]
)、函數調用 (()
)、new (帶參數列表) - new (無參數列表)
- 遞增/遞減 (
++
,--
)(前綴和後綴) - 邏輯非 (
!
)、按位非 (~
)、一元正號 (+
)、一元負號 (-
)、類型轉換 (typeof
)、刪除 (delete
)、void - 指數 (
**
) - 乘法、除法、取餘數 (
*
,/
,%
) - 加法、減法 (
+
,-
) - 按位移位 (
<<
,>>
,>>>
) - 關係運算子 (
<
,<=
,>
,>=
,in
,instanceof
) - 相等運算子 (
==
,!=
,===
,!==
) - 按位 AND (
&
) - 按位 XOR (
^
) - 按位 OR (
|
) - 邏輯 AND (
&&
) - 邏輯 OR (
||
) - 條件 (
?:
) - 賦值 (
=
,+=
,-=
,*=
,/=
,%=
,**=
,<<=
,>>=
,>>>=
,&=
,^=
,|=
) - 逗號 (
,
)