1. 程式人生 > >js 運算子優先順序總結

js 運算子優先順序總結

下面的表將所有運算子按照優先順序的不同從高到低排列(來源:MDN)

優先順序 運算型別 關聯性 運算子
20 圓括號 n/a ( … )
19 成員訪問 從左到右 … . …
需計算的成員訪問 從左到右 … [ … ]
new (帶引數列表) n/a new … ( … )
函式呼叫 從左到右 … ( … )
18 new (無引數列表) 從右到左 new …
17 後置遞增(運算子在後) n/a
 
… ++
後置遞減(運算子在後) … --
16 邏輯非 從右到左 ! …
按位非 ~ …
一元加法 + …
一元減法 - …
前置遞增 ++ …
前置遞減 -- …
typeof typeof …
void void …
delete delete …
await await …
15 從右到左 … ** …
14 乘法 從左到右
 
… * …
除法 … / …
取模 … % …
13 加法 從左到右
 
… + …
減法 … - …
12 按位左移 從左到右 … << …
按位右移 … >> …
無符號右移 … >>> …
11 小於 從左到右 … < …
小於等於 … <= …
大於 … > …
大於等於 … >= …
in … in …
instanceof … instanceof …
10 等號 從左到右
 
… == …
非等號 … != …
全等號 … === …
非全等號 … !== …
9 按位與 從左到右 … & …
8 按位異或 從左到右 … ^ …
7 按位或 從左到右 … | …
6 邏輯與 從左到右 … && …
5 邏輯或 從左到右 … || …
4 條件運算子 從右到左 … ? … : …
3 賦值 從右到左 … = …
… += …
… -= …
… *= …
… /= …
… %= …
… <<= …
… >>= …
… >>>= …
… &= …
… ^= …
… |= …
2 yield 從右到左 yield …
yield* yield* …
1 展開運算子 n/a ... …
0 逗號 從左到右 … , …