Microsoft(R) JScript(R)
运算符优先级
 语言参考 
版本 1 


JScript 中的运算符按特定顺序求值。该顺序被称作运算符优先级。下表按最高到最低优先级顺序列出了所有运算符。在表达式中具有相同优先级的运算符按从左到右顺序求值。

运算符描述
. [] ()域访问、数组下标和函数调用
++ -- - ~ ! delete new typeof void一元运算符、返回数据类型、对象创建、未定义的值
* / %乘、除、取模
+ - +加、减、字符串连接
<< >> >>>位移动
< <= > >= instanceof小于、小于等于、大于、大于等于、instanceof
== != === !==相等、不相等、恒等、不恒等
&按位“与”
^按位“异或”
|按位“或”
&&逻辑“与”
||逻辑“或”
?:条件
= oP=赋值、带操作的赋值
,多重求值

括号可用于改变求值的顺序。括号中的表达式在语句的剩余部分用到其值之前被完全求值。

具有较高优先级的运算符在较低优先级的之前被求值。例如:

z = 78 * (96 + 3 + 45)

该表达式中有五个运算符:=、*、()、+ 和 +。按优先级,它们按如下顺序被求值:()、*、+、+、=。

  1. 括号中的表达式首先被求值: 其中有两个加法运算符,它们具有相同的优先级:96 和 3 被加在一起,然后 45 被加到总和中,得到值为 144 的结果。
  2. 随后是乘法:78 乘以 144 ,得到值为 10998 的结果。
  3. 最后是赋值:11232 被赋给 z。