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 相关文章推荐
HTML 自动伸缩的表格Table js实现
Apr 01 Javascript
js中opener与parent的区别详细解析
Jan 14 Javascript
Bootstarp风格的toggle效果分享
Feb 23 Javascript
js贪吃蛇游戏实现思路和源码
Apr 14 Javascript
关于javascript中限定时间内防止按钮重复点击的思路详解
Aug 16 Javascript
Extjs让combobox写起来简洁又漂亮
Jan 05 Javascript
JQ中$(window).load和$(document).ready区别与执行顺序
Mar 01 Javascript
JQuery.dataTables表格插件添加跳转到指定页
Jun 09 jQuery
JavaScript生成图形验证码
Aug 24 Javascript
vue-router传递参数的几种方式实例详解
Nov 13 Javascript
JavaScript写个贪吃蛇小游戏(超详细)
Mar 17 Javascript
Element Carousel 走马灯的具体实现
Jul 26 Javascript
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实现的带超时功能get_headers函数
2015/02/10 PHP
WordPress的主题编写中获取头部模板和底部模板
2015/12/28 PHP
thinkphp3.x中session方法的用法分析
2016/05/20 PHP
PHP基于DOM创建xml文档的方法示例
2017/02/08 PHP
初探jquery——表单应用范例
2007/02/20 Javascript
js中查找最近的共有祖先元素的实现代码
2010/12/30 Javascript
JavaScript中instanceof与typeof运算符的用法及区别详细解析
2013/11/19 Javascript
jquery通过扩展select控件实现支持enter或focus选择的方法
2015/11/19 Javascript
谈一谈JS消息机制和事件机制的理解
2016/04/14 Javascript
vue引入ueditor及node后台配置详解
2018/01/03 Javascript
vue初始化动画加载的实例
2018/09/01 Javascript
深入探讨JavaScript的最基本部分之执行上下文
2019/02/12 Javascript
JavaScript this关键字指向常用情况解析
2020/09/02 Javascript
关于JavaScript数组去重的一些理解汇总
2020/09/10 Javascript
JSON 入门教程基础篇 json入门学习笔记
2020/09/22 Javascript
Python多线程编程(五):死锁的形成
2015/04/05 Python
python使用PyCharm进行远程开发和调试
2017/11/02 Python
利用python解决mysql视图导入导出依赖的问题
2017/12/17 Python
使用python验证代理ip是否可用的实现方法
2018/07/25 Python
django+echart绘制曲线图的方法示例
2018/11/26 Python
Python 用三行代码提取PDF表格数据
2019/10/13 Python
Python实现打印实心和空心菱形
2019/11/23 Python
Pytorch 多维数组运算过程的索引处理方式
2019/12/27 Python
pandas实现excel中的数据透视表和Vlookup函数功能代码
2020/02/14 Python
Django微信小程序后台开发教程的实现
2020/06/03 Python
跑步爱好者一站式服务网站:Jack Rabbit
2016/09/01 全球购物
美国时尚大码女装购物网站:Avenue
2019/05/24 全球购物
SQL语言面试题
2013/08/27 面试题
大学自我评价
2014/02/12 职场文书
写好自荐信需做到的5要点
2014/03/07 职场文书
教师专业自荐信
2014/05/31 职场文书
2014年化工厂工作总结
2014/11/25 职场文书
2015公务员试用期工作总结
2014/12/12 职场文书
导游词之南京汤山温泉
2019/11/26 职场文书
导游词之泰山玉皇顶
2019/12/23 职场文书
类和原型的设计模式之复制与委托差异
2022/07/07 Javascript