JavaScript 的運算符 JavaScript 教程
--------------------------------------------------------------------------------
JavaScript 具有全范圍的運算符,包括算術、邏輯、位以及賦值運算符。此外還有其他一些運算符。
計算 邏輯 位運算 賦值 雜項
描述 符號 描述 符號 描述 符號 描述 符號 描述 符號
負值 - 邏輯非 ! 按位取反 ~ 賦值 = 刪除 delete
遞增 ++ 小于 < 按位左移 << 運算賦值 oP= typeof 運算符 typeof
遞減 -- 大于 > 按位右移 >> void 運算符 void
乘法 * 小于等于 <= 無符號右移 >>>
除法 / 大于等于 >= 按位與 &
取模運算 % 等于 == 按位異或 ^
加法 + 不等于 != 按位或 |
減法 - 邏輯與 &&
邏輯或 ||
條件(三元運算符) ?:
逗號 ,
恒等 ===
不恒等 !==
運算符優先極
JavaScript 中的運算符是按照一個特定的順序來求值的。這個順序就是運算符的優先級。下表按從最高到最低的優先級列出了這些運算符。處于同一行中的運算符按從左至右的順序求值。
運算符 描述
. [] () 字段訪問、數組下標以及函數調用
++ -- - ~ ! typeof new void delete 一元運算符、返回數據類型、對象創建、未定義值
* / % 乘法、除法、取模
+ - + 加法、減法、字符串連接
<< >> >>> 移位
< <= > >= 小于、小于等于、大于、大于等于
== != === !== 等于、不等于、恒等、不恒等
& 按位與
^ 按位異或
| 按位或
&& 邏輯與
|| 邏輯或
?: 條件
= oP= 賦值、運算賦值
, 多重求值
圓括號可用來改變求值順序。圓括號中的表達式應在其用于語句的其余部分之前全部被求值。
具有較高優先級的運算符將在具有較低優先級的運算符之前被求值。例如:
z = 78 * (96 + 3 + 45)
在該表達式中有五個運算符: =, *, (), +, 以及 +。根據優先級,它們將按下面的順序求值: (), *, +, +, =。
首先對圓括號內的表達式求值:其中有兩個加法運算符,它們具有相同的優先級:96 和 3 相加,然后再將它們的和與 45 相加,得到的結果為 144。
然后是乘法運算: 78 和 144 相乘,得到結果為 11232。
最后是賦值運算:將 11232 賦給 z。