學習 JavaScript 運算子的優先順序規則基礎知識

每個複雜的敘述都會引入優先順序的問題。

以這個為例:

const a = 1 \* 2 + 5 / 2 % 2

結果為 2.5,但為什麼呢?哪個運算會先執行,哪個需要等待呢?

某些運算符的優先順序高於其他的。以下是優先順序規則的列表:

運算符 描述
- + ++ -- 一元運算符,遞增和遞減
* / % 乘法/除法
+ - 加法/減法
= += -= *= /= %= **= 賦值

同級別的運算(例如 +-)按照它們出現的順序執行。

按照這個表格,我們可以解決這個計算:

const a = 1 \* 2 + 5 / 2 % 2
const a = 2 + 5 / 2 % 2
const a = 2 + 2.5 % 2
const a = 2 + 0.5
const a = 2.5