Javascript算符的优先级介绍


Posted in Javascript onMarch 20, 2013

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

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

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

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

z = 78 * (96 + 3 + 45)

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

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

===操作符: 要是两个值类型不同,返回false 要是两个值都是number类型,并且数值相同,返回true 要是两个值都是stirng,并且两个值的String内容相同,返回true 要是两个值都是true或者都是false,返回true 要是两个值都是指向相同的Object,Arraya或者function,返回true 要是两个值都是null或者都是undefined,返回true ==操作符: 如果两个值具有相同类型,会进行===比较,返回===的比较值 如果两个值不具有相同类型,也有可能返回true 如果一个值是null另一个值是undefined,返回true 如果一个值是string另个是number,会把string转换成number再进行比较 如果一个值是true,会把它转成1再比较,false会转成0 如果一个值是Object,另一个是number或者string,会把Object利用 valueOf()或者toString()转换成原始类型再进行比较

详细出处参考:https://3water.com/article/17542.htm

Javascript 相关文章推荐
Ext 表单布局实例代码
Apr 30 Javascript
ASP Json Parser修正版
Dec 06 Javascript
Confirmer JQuery确认对话框组件
Jun 09 Javascript
基于jquery的鼠标拖动效果代码
May 30 Javascript
jquery 构造函数在表单提交过程中修改数据
May 25 Javascript
JS实现添加,替换,删除节点元素的方法
Jun 30 Javascript
javascript输出AscII码扩展集中的字符方法
Dec 26 Javascript
用jQuery实现圆点图片轮播效果
Mar 19 Javascript
Angular2中select用法之设置默认值与事件详解
May 07 Javascript
jQuery实现导航样式布局操作示例【可自定义样式布局】
Jul 24 jQuery
JavaScript的级联函数用法简单示例【链式调用】
Mar 26 Javascript
基于vue与element实现创建试卷相关功能(实例代码)
Dec 07 Vue.js
jQuery.validate 常用方法及需要注意的问题
Mar 20 #Javascript
如何用js控制frame的隐藏或显示的解决办法
Mar 20 #Javascript
事件冒泡是什么如何用jquery阻止事件冒泡
Mar 20 #Javascript
jQuery对象和Javascript对象之间转换的实例代码
Mar 20 #Javascript
jquery的ajax请求全面了解
Mar 20 #Javascript
js控制滚动条缓慢滚动到顶部实现代码
Mar 20 #Javascript
JSON+JavaScript处理JSON的简单例子
Mar 20 #Javascript
You might like
用PHP制作静态网站的模板框架(二)
2006/10/09 PHP
谈谈新手如何学习PHP
2006/12/23 PHP
简单实现限定phpmyadmin访问ip的方法
2013/03/05 PHP
php实现每天自动变换随机问候语的方法
2015/05/12 PHP
详解php几行代码实现CSV格式文件输出
2017/07/01 PHP
HTML中Select不用Disabled实现ReadOnly的效果
2008/04/07 Javascript
js创建子窗口并且回传值示例代码
2013/07/02 Javascript
JavaScript中奇葩的假值示例应用
2014/03/11 Javascript
JS如何判断是否为ie浏览器的方法(包括IE10、IE11在内)
2015/12/13 Javascript
点击按钮出现60秒倒计时的简单js代码(推荐)
2016/06/07 Javascript
js代码延迟一定时间后执行一个函数的实例
2017/02/15 Javascript
Vue中的v-for循环key属性注意事项小结
2018/08/12 Javascript
jQuery.parseJSON()函数详解
2019/02/28 jQuery
javascript数据类型中的一些小知识点(推荐)
2019/04/18 Javascript
加速vue组件渲染之性能优化
2020/04/09 Javascript
JS 设计模式之:单例模式定义与实现方法浅析
2020/05/06 Javascript
[00:29]2019完美世界全国高校联赛(秋季赛)总决赛海口落幕
2019/12/10 DOTA
零基础写python爬虫之爬虫的定义及URL构成
2014/11/04 Python
python模仿网页版微信发送消息功能
2018/02/24 Python
使用Python和xlwt向Excel文件中写入中文的实例
2018/04/21 Python
使用Python微信库itchat获得好友和群组已撤回的消息
2018/06/24 Python
python读文件的步骤
2019/10/08 Python
Python:合并两个numpy矩阵的实现
2019/12/02 Python
Python基于pandas爬取网页表格数据
2020/05/11 Python
Feelunique美国:欧洲大型的在线美妆零售电商
2018/11/04 全球购物
意大利在线高尔夫商店:Online Golf
2021/03/09 全球购物
.NET常见笔试题集
2012/12/01 面试题
会计电算化个人自我评价
2013/11/17 职场文书
舞蹈教育学专业推荐信
2013/11/27 职场文书
内刊编辑求职自荐书范文
2014/02/19 职场文书
优秀的应届生自荐信
2014/05/23 职场文书
大学生助学金感谢信
2015/01/21 职场文书
2015年学校安全工作总结
2015/04/22 职场文书
硕士论文致谢范文
2015/05/14 职场文书
CAD实训总结范文
2015/08/03 职场文书
JAVA 线程池(池化技术)的实现原理
2022/04/28 Java/Android