JavaScript 運算子
Javascript 運算子用於執行不同型別的數學和邏輯計算。
示例
賦值運算子 = 賦值
加法運算子 + 相加
乘法運算子 * 相乘
比較運算子 > 比較值
JavaScript 賦值
賦值運算子 (=
) 將值賦給變數
賦值示例
let x = 10;
自己動手試一試 »
// 將值 5 賦給 x
let x = 5;
// 將值 2 賦給 y
let y = 2;
// 將 x + y 的值賦給 z
let z = x + y;
自己動手試一試 »
JavaScript 加法
加法運算子 (+
) 相加數字
JavaScript 乘法
乘法運算子 (*
) 相乘數字
JavaScript 運算子的型別
JavaScript 運算子有不同的型別
- 算術運算子
- 賦值運算子
- 比較運算子
- 字串運算子
- 邏輯運算子
- 按位運算子
- 三元運算子
- 型別運算子
JavaScript 算術運算子
算術運算子 用於對數字執行算術運算
運算子 | 描述 |
---|---|
+ | 加法 |
- | 減法 |
* | 乘法 |
** | 冪運算 (ES2016) |
/ | 除法 |
% | 取模 (除法餘數) |
++ | 遞增 |
-- | 遞減 |
注意
算術運算子在 JS 算術 章中詳細描述。
JavaScript 賦值運算子
賦值運算子將值賦給 JavaScript 變數。
加法賦值運算子 (+=
) 將值新增到變數。
運算子 | 示例 | 等同於 |
---|---|---|
= | x = y | 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 |
**= | x **= y | x = x ** y |
注意
賦值運算子在 JS 賦值 章中詳細描述。
JavaScript 比較運算子
運算子 | 描述 |
---|---|
== | 等於 |
=== | 值相等且型別相等 |
!= | 不等於 |
!== | 值不相等或型別不相等 |
> | 大於 |
< | 小於 |
>= | 大於或等於 |
<= | 小於或等於 |
? | 三元運算子 |
注意
比較運算子在 JS 比較 章中詳細描述。
JavaScript 字串比較
所有上述比較運算子也可用於字串
請注意,字串是按字母順序比較的
JavaScript 字串連線
+
運算子也可用於連線字串
+=
賦值運算子也可用於連線字串
注意
當用於字串時,+ 運算子被稱為連線運算子。
字串與數字相加
將兩個數字相加將返回它們的和,但將一個數字和一個字串相加將返回一個字串
注意
如果你將一個數字和一個字串相加,結果將是一個字串!
JavaScript 邏輯運算子
運算子 | 描述 |
---|---|
&& | 邏輯與 |
|| | 邏輯或 |
! | 邏輯非 |
注意
邏輯運算子在 JS 比較 章中詳細描述。
JavaScript 型別運算子
運算子 | 描述 |
---|---|
typeof | 返回變數的型別 |
instanceof | 如果物件是某種物件型別的例項,則返回 true |
注意
型別運算子在 JS 型別轉換 章中詳細描述。
JavaScript 位運算子
位運算子作用於 32 位數字。
操作中的任何數字運算元都將轉換為 32 位數字。結果將轉換回 JavaScript 數字。運算子 | 描述 | 示例 | 等同於 | 結果 | 十進位制 |
---|---|---|---|---|---|
& | AND(與) | 5 & 1 | 0101 & 0001 | 0001 | 1 |
| | OR(或) | 5 | 1 | 0101 | 0001 | 0101 | 5 |
~ | NOT(非) | ~ 5 | ~0101 | 1010 | 10 |
^ | 異或 | 5 ^ 1 | 0101 ^ 0001 | 0100 | 4 |
<< | 左移 | 5 << 1 | 0101 << 1 | 1010 | 10 |
>> | 右移 | 5 >> 1 | 0101 >> 1 | 0010 | 2 |
>>> | 無符號右移 | 5 >>> 1 | 0101 >>> 1 | 0010 | 2 |
以上示例使用 4 位無符號示例。但 JavaScript 使用 32 位有符號數字。
因此,在 JavaScript 中,~ 5 不會返回 10。它將返回 -6。
~00000000000000000000000000000101 將返回 11111111111111111111111111111010
位運算子在 JS 位操作 章中詳細描述。