JScript 运算符优先级

js|jscript|运算

  JScript 中的运算符优先级是一套规则。该规则在计算表达式时控制运算符执行的顺序。具有较高优先级的运算符先于较低优先级的运算符执行。例如,乘法的执行先于加法。

  下表按从最高到最低的优先级列出 JScript 运算符。具有相同优先级的运算符按从左至右的顺序求值。

  运算符 描述
  . [] () 字段访问、数组下标、函数调用以及表达式分组
  ++ — - ~ ! delete new typeof void 一元运算符、返回数据类型、对象创建、未定义值
  * / % 乘法、除法、取模
  + - + 加法、减法、字符串连接
  << >> >>> 移位
  < <= > >= instanceof 小于、小于等于、大于、大于等于、instanceof
  == != === !== 等于、不等于、严格相等、非严格相等
  & 按位与
  ^ 按位异或
  | 按位或
  && 逻辑与
  || 逻辑或
  ?: 条件
  = oP= 赋值、运算赋值
  , 多重求值

  圆括号可用来改变运算符优先级所决定的求值顺序。这意味着圆括号中的表达式应在其用于表达式的其余部分之前全部被求值。

  例如:

  z = 78 * (96 + 3 + 45)
  在该表达式中有五个运算符: =, *, (), +, 以及另一个 +。根据运算符优先级的规则,它们将按下面的顺序求值: (), +, +, *, =。

  首先对圆括号内的表达式求值。圆括号中有两个加法运算符。因为两个加法运算符具有相同的优先级,从左到右求值。先将 96 和 3 相加,然后将其和与 45 相加,得到的结果为 144。
  然后是乘法运算。78 乘以 144,得到结果为 11232。
  最后是赋值运算。将 11232 赋给 z。

时间: 2024-09-17 04:17:25

JScript 运算符优先级的相关文章

运算符优先级

运算   JScript 中的运算符优先级是一套规则.该规则在计算表达式时控制运算符执行的顺序.具有较高优先级的运算符先于较低优先级的运算符执行.例如,乘法的执行先于加法. 下表按从最高到最低的优先级列出 JScript 运算符.具有相同优先级的运算符按从左至右的顺序求值. 运算符 描述 . [] () 字段访问.数组下标.函数调用以及表达式分组 ++ -- - ~ ! delete new typeof void 一元运算符.返回数据类型.对象创建.未定义值 * / % 乘法.除法.取模 +

js利用与或运算符优先级实现if else条件判断表达式_javascript技巧

复制代码 代码如下: <script type="text/javascript"> /******************************************************************* 利用运算符优先级实现ifelse表达式 result = expression1 && expression2 当且仅当两个表达式的值都等于 True 时, result 才是 True. 如果任一表达式的值等于 False, 则 res

Java编程那些事儿28—运算符优先级

4.7 运算符优先级 在实际的开发中,可能在一个运算符中出现多个运算符,那么计算时,就按照优先级级别的高低进行计算,级别高的运算符先运算,级别低的运算符后计算,具体运算符的优先级见下表: 运算符优先级表 优先级 运算符 结合性 1 ()[]. 从左到右 2 !+(正) -(负)~++-- 从右向左 3 */% 从左向右 4 +(加)-(减) 从左向右 5 <<>>>>> 从左向右 6 <<=>>=instanceof 从左向右 7 == !

c/c++系列的运算符优先级总结

经常写程序的时候,遇到运算符优先级的问题,令我汗颜的是,查书的次数挺多的--狠狠心,总结下.不过还要结合大量的编程实践来深入脑海. 1.首先永远忘不了的是,逗号运算符级别最低,毫无争议的还有()括起来的,人工设定了最高优先级,先算括号里的. 2.非人为的,就是四个,函数调用(),[]数组下标,点运算符,间接->运算符.他们是优先级最高的,从左到右.拿->记忆结合性 3.还有最起码知道,所有的单目运算符具有相同级别的优先级,记住是所有的.且记住都是从右到左 比如:正负号+i和-i,自增自减++i

C++ 运算符优先级列表

运算符是告诉编译程序执行特定算术或逻辑操作的符号.C语言的运算范围很宽,把除了控制语句和输入输出以外的几乎所有的基本操作都作为运算符处理.主要分为三大类:算术运算符. 关系运算符与逻辑运算符.除此之外,还有一些用于完成特殊任务的运算符. 运算符的优先级与结合性     优先级:C语言中,运算符的运算优先级共分为15级.1级最高,15级最低.在表达式中,优先级较高的先于优先级较低的进行运算.而在一个运算量两侧的运算符优先级相同时,则按运算符的结合性所规定的结合方向处理.     结合性:C语言中各

c语言-关于运算符优先级的问题。急求指导。

问题描述 关于运算符优先级的问题.急求指导. 1. struct num {int a,b;}s[]={{1,6},{2,3}},*p=s; printf("%d",p->b/s[1].a*++p->a); 为什么输出6?先算p->b再算s[1].a,之后是++p->a,最后算乘除对吗. ++p->a为什么是2?->的优先级不是比++高么,为什么不是先取值再++ 2. static int a[10]={1,3,5,7,9}; int *p=a; p

Java运算符优先级(转)

Java运算符优先级   序列号 符号 名称 结合性(与操作数) 目数 说明 1 . 点 从左到右 双目   ( ) 圆括号 从左到右     [ ] 方括号 从左到右     2 + 正号 从右到左 单目   - 负号 从右到左 单目   ++ 自增 从右到左 单目 前缀增,后缀增 - - 自减 从右到左 前缀减,后缀减 ~ 按位非/取补运算 从右到左 单目   ! 逻辑非 从右到左 单目 "!"不可以与"="联用 3 * 乘 从左到右 双目   / 除 从左到右

C语言运算符优先级列表(超详细)_C 语言

每当想找哪个运算符优先级高时,很多时候总是想找的就没有,真让人气愤!现在,终于有个我个人觉得非常全的,分享给大家,欢迎拍砖! C语言运算符优先级 优先级 运算符 名称或含义 使用形式 结合方向 说明 1 [] 数组下标 数组名[常量表达式] 左到右 -- () 圆括号 (表达式)/函数名(形参表) -- . 成员选择(对象) 对象.成员名 -- -> 成员选择(指针) 对象指针->成员名 --   2 - 负号运算符 -表达式 右到左 单目运算符 ~ 按位取反运算符 ~表达式 ++ 自增运算符

《C语言编程初学者指南》一2.9 理解运算符优先级

2.9 理解运算符优先级 在任何编程语言中,处理算术运算的时候,运算符的优先级都是很重要的.C 语言中的运算符优先级参见表2.6. 考虑如下的算式,它使用圆括号来表明正确的运算顺序: f = (a – b)(x – y); 假设a=5.b=1并且y=10,你可以使用如下的语法,用C来实现该表达式: intF = (5 – 1) * (10 – 5); 使用正确的计算顺序,intF的值将会是20.看一下C语言中的相同的实现,这一次,没有使用圆括号来表明正确的计算顺序. intF = 5 – 1 *