浅谈JavaScript中运算符的优先级


Posted in Javascript onJuly 07, 2015

运算符优先级

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

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

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

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

z = 78 * (96 + 3 + 45)

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

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

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
兼容FF和IE的动态table示例自写
Oct 21 Javascript
Google Maps API地图应用示例分享
Oct 23 Javascript
javascript表单验证大全
Aug 12 Javascript
jQuery实现仿美橙互联两级导航菜单效果完整实例
Sep 17 Javascript
js类式继承与原型式继承详解
Apr 07 Javascript
基于javascript实现按圆形排列DIV元素(二)
Dec 02 Javascript
浅谈Vue 数据响应式原理
May 07 Javascript
学习使用ExpressJS 4.0中的新Router的用法
Nov 06 Javascript
JavaScript变量提升和严格模式实例分析
Jan 27 Javascript
Vue 动态添加路由及生成菜单的方法示例
Jun 20 Javascript
Node.js系列之连接DB的方法(3)
Aug 30 Javascript
JavaScript面向对象核心知识与概念归纳整理
May 09 Javascript
浏览器中url存储的JavaScript实现
Jul 07 #Javascript
浅谈JavaScript中的作用域和闭包问题
Jul 07 #Javascript
深入分析下javascript中的[]()+!
Jul 07 #Javascript
javascript实现的多个层切换效果通用函数实例
Jul 06 #Javascript
javascript动态添加删除tabs标签的方法
Jul 06 #Javascript
Jsonp post 跨域方案
Jul 06 #Javascript
javascript运动详解
Jul 06 #Javascript
You might like
php创建基本身份认证站点的方法详解
2013/06/08 PHP
跨浏览器的设置innerHTML方法
2006/09/18 Javascript
在IE下:float属性会影响offsetTop的取值
2006/12/22 Javascript
javascript得到XML某节点的子节点个数的脚本
2008/10/11 Javascript
通过隐藏iframe实现文件下载的js方法介绍
2014/02/26 Javascript
使用jQuery仿苹果官网焦点图特效
2014/12/23 Javascript
学习JavaScript设计模式(多态)
2015/11/25 Javascript
vue中appear的用法
2017/08/17 Javascript
jquery tmpl模板(实例讲解)
2017/09/02 jQuery
使用 node.js 模仿 Apache 小部分功能
2019/07/07 Javascript
vue中keep-alive、activated的探讨和使用详解
2020/07/26 Javascript
vue vant中picker组件的使用
2020/11/03 Javascript
[46:12]完美世界DOTA2联赛循环赛 DM vs Matador BO2第一场 11.04
2020/11/04 DOTA
尝试用最短的Python代码来实现服务器和代理服务器
2016/06/23 Python
Python的string模块中的Template类字符串模板用法
2016/06/27 Python
Python md5与sha1加密算法用法分析
2017/07/14 Python
在Python中执行系统命令的方法示例详解
2017/09/14 Python
详解Python是如何实现issubclass的
2019/07/24 Python
详解python中自定义超时异常的几种方法
2019/07/29 Python
基于django传递数据到后端的例子
2019/08/16 Python
使用pandas库对csv文件进行筛选保存
2020/05/25 Python
终于搞懂了Keras中multiloss的对应关系介绍
2020/06/22 Python
Python3基于plotly模块保存图片表格
2020/08/03 Python
html5 CSS过度-webkit-transition使用介绍
2013/07/02 HTML / CSS
斯洛伐克家具和时尚装饰品购物网站:Butlers.sk
2019/09/08 全球购物
医学院学生求职简历的自我评价
2013/10/24 职场文书
构建高效课堂实施方案
2014/03/13 职场文书
见习期自我鉴定范文
2014/03/19 职场文书
投资合作协议书
2014/04/17 职场文书
公司优秀员工获奖感言
2014/08/14 职场文书
学校政风行风评议心得体会
2014/10/21 职场文书
2014年个人年终总结
2015/03/09 职场文书
2015社区六五普法工作总结
2015/04/21 职场文书
党支部综合考察意见
2015/06/01 职场文书
2015年秋季灭鼠工作总结
2015/07/27 职场文书
选调生挂职锻炼工作总结
2015/10/23 职场文书