1. JavaScript 基础

  2. 深入数据和类型

  3. 函数进阶

  4. 运算符

  5. 浏览器存储

  6. Document

  7. Web API

  8. 事件

  9. 工具与规范

  10. 实例

  11. 练习

数学课上学过,当一个公式中存在乘除号时应先被计算,再计算加减号。

JavaScript 中也是,当一个表达式中存在多个运算符时,执行顺序由运算符的优先级决定。

$$jsdemo$$
$$edit$$
let result = 5 + 2 * 3 // 11
alert(result)

参考完整的运算符优先级汇总表 - MDN

$$tip

赋值运算符也有优先级,并且优先级很低,所以赋值运算符几乎总是最后执行。

$$

分组运算符

( ... ) 分组运算符的优先级是最高的,它可以帮助我们改变运算顺序。

$$jsdemo$$
$$edit$$
let result = 5 + 2 * 3 // 11
alert(result)
result = (5 + 2) * 3 // 21
alert(result)

$$tip

当不明确哪个运算符优先级高时,可以用分组运算符来明确先后顺序,多用分组运算符没有坏处。

$$


练习

  1. 以下的计算结果是什么呢,试着口算一下。
3 + 2 * 5 ** 2
4 + 2 * 3 == 2 + 2 ** 3
-1 + 4 * 2 > 5 + 6 / 2