
上QQ阅读APP看书,第一时间看更新
2.3.8 运算符执行顺序
当一个表达式中出现多个运算符时,和我们在数学中学习的先算乘除后算加减的原理类似,不同的运算符的优先级是不同的,不是单纯按从左到右的顺序执行。因此JavaScript中的运算符是严格按照优先级的顺序来执行的,表2.12列出了JavaScript中各种运算符的优先级。
表2.12 JavaScript运算符的优先级

当遇到优先级相同的运算符时,除了几种特殊的运算符之外,一般按照从左向右的顺序执行,但也有一些运算符是从右向左执行的,多数为一元运算符,表2.13列出了JavaScript中从右向左执行的运算符。
表2.13 JavaScript从右向左执行的运算符

在编码过程中,遇到多个运算符在同一表达式中时,一般不会用到像“new”一样的特殊运算符,下面代码简单展示了一些运算符的执行顺序:

输出如图2.40所示。

图2.40 样例输出2.40
在平时编码时,为了避免运算符顺序出错,建议在面对长的、复杂的表达式时,尽量将其拆分成几个表达式来写,或者运用“()”保证其顺序的正确性,这样也便于以后的查看和修改。