JavaScript 有賦值、比較、算術、位、邏輯、字符串和特殊運算符。本章描述了操作符,以及關於操作符優先級的一些信息。
操作符分類 |
操作符 |
描述 |
算
術
操
作
符
+
(加法) 將兩個數相加。
++
(自增) 將表示數值的變量加一(可以返回新值或舊值)。
-
(求相反數,減法) 作為求相反數操作符時返回參數的相反數。作為二進制操作符時,將兩個數相減。
--
(自減) 將表示數值的變量減一(可以返回新值或舊值)。
*
(乘法) 將兩個數相乘。
/
(除法) 將兩個數相除。
%
(求余) 求兩個數相除的余數。
字符串操作符
+
(字符串加法) 連接兩個字符串。
+=
連接兩個字符串,並將結果賦給第一個字符串。
邏
輯
操
作
符
&&
(邏輯與) 如果兩個操作數都是真的話則返回真。否則返回假。
||
(邏輯或) 如果兩個操作數都是假的話則返回假。否則返回真。
!
(邏輯非) 如果其單一操作數為真,則返回假。否則返回真。
位
操
作
符
&
(按位與) 如果兩個操作數對應位都是 1 的話則在該位返回 1。
^
(按位異或) 如果兩個操作數對應位只有一個 1 的話則在該位返回 1。
|
(按位或) 如果兩個操作數對應位都是 0 的話則在該位返回 0。
~
(求反) 反轉操作數的每一位。
<<
(左移) 將第一操作數的二進制形式的每一位向左移位,所移位的數目由第二操作數指定。右面的空位補零。
>>
(算術右移) 將第一操作數的二進制形式的每一位向右移位,所移位的數目由第二操作數指定。忽略被移出的位。
>>>
(邏輯右移) 將第一操作數的二進制形式的每一位向右移位,所移位的數目由第二操作數指定。忽略被移出的位,左面的空位補零。
賦
值
操
作
符
=
將第二操作數的值賦給第一操作數。
+=
將兩個數相加,並將和賦給第一個數。
-=
將兩個數相減,並將差賦給第一個數。
*=
將兩個數相乘,並將積賦給第一個數。
/=
將兩個數相除,並將商賦給第一個數。
%=
計算兩個數相除的余數,並將余數賦給第一個數。
&=
執行按位與,並將結果賦給第一個操作數。
^=
執行按位異或,並將結果賦給第一個操作數。
|=
執行按位或,並將結果賦給第一個操作數。
<<=
執行左移,並將結果賦給第一個操作數。
>>=
執行算術右移,並將結果賦給第一個操作數。
>>>=
執行邏輯右移,並將結果賦給第一個操作數。
比
較
操
作
符
==
如果操作數相等的話則返回真。
!=
如果操作數不相等的話則返回真。
>
如果左操作數大於右操作數的話則返回真。
>=
如果左操作數大於等於右操作數的話則返回真。
<
如果左操作數小於右操作數的話則返回真。
<=
如果左操作數小於等於右操作數的話則返回真。
特
殊
操
作
符
?:
執行一個簡單的“if...else”語句。
,
計算兩個表達式,返回第二個表達式的值。
delete
允許你刪除一個對象的屬性或數組中指定的元素。
new
允許你創建一個用戶自定義對象類型或內建對象類型的實例。
this
可用於引用當前對象的關鍵字。
typeof
返回一個字符串,表明未計算的操作數的類型。
void
該操作符指定了要計算一個表達式但不返回值。