运算符优先级

Tags
javascript
Created
Nov 4, 2015 1:48 PM

运算符两个可以有任意多个空格或换行符

结合性决定了拥有相同优先级的运算符的执行顺序

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Operator_Precedence

优先级
运算类型
关联性
运算符
20
n/a
( … )
19
从左到右
… . …
从左到右
… [ … ]
new (带参数列表)
n/a
new … ( … )
从左到右
… ( … )
18
new (无参数列表)
从右到左
new …
17
后置递增(运算符在后)
n/a
… ++
后置递减(运算符在后)
… --
16
从右到左
! …
~ …
+ …
- …
++ …
-- …
typeof …
void …
delete …
await …
15
从右到左
… ** …
14
从左到右
… * …
… / …
… % …
13
从左到右
… + …
… - …
12
从左到右
… << …
… >> …
… >>> …
11
从左到右
… < …
… <= …
… > …
… >= …
… in …
… instanceof …
10
从左到右
… == …
… != …
… === …
… !== …
9
从左到右
… & …
8
从左到右
… ^ …
7
从左到右
… | …
6
从左到右
… && …
5
从左到右
… || …
4
从右到左
… ? … : …
3
从右到左
… = …
… += …
… -= …
… *= …
… /= …
… %= …
… <<= …
… >>= …
… >>>= …
… &= …
… ^= …
… |= …
2
从右到左
yield …yield* …
n/a
... …
0
从左到右
… , …
SuperMade with Super