Microsoft(R) JScript(R) 运算符优先级 |
语言参考 版本 1 |
JScript 中的运算符按特定顺序求值。该顺序被称作运算符优先级。下表按最高到最低优先级顺序列出了所有运算符。在表达式中具有相同优先级的运算符按从左到右顺序求值。
运算符 描述 . [] () 域访问、数组下标和函数调用 ++ -- - ~ ! delete new typeof void 一元运算符、返回数据类型、对象创建、未定义的值 * / % 乘、除、取模 + - + 加、减、字符串连接 << >> >>> 位移动 < <= > >= instanceof 小于、小于等于、大于、大于等于、instanceof == != === !== 相等、不相等、恒等、不恒等 & 按位“与” ^ 按位“异或” | 按位“或” && 逻辑“与” || 逻辑“或” ?: 条件 = oP= 赋值、带操作的赋值 , 多重求值 括号可用于改变求值的顺序。括号中的表达式在语句的剩余部分用到其值之前被完全求值。
具有较高优先级的运算符在较低优先级的之前被求值。例如:
z = 78 * (96 + 3 + 45)该表达式中有五个运算符:=、*、()、+ 和 +。按优先级,它们按如下顺序被求值:()、*、+、+、=。
- 括号中的表达式首先被求值: 其中有两个加法运算符,它们具有相同的优先级:96 和 3 被加在一起,然后 45 被加到总和中,得到值为 144 的结果。
- 随后是乘法:78 乘以 144 ,得到值为 10998 的结果。
- 最后是赋值:11232 被赋给 z。