关于运算符优先级有关

来源:互联网 发布:linux安装包损坏 编辑:程序博客网 时间:2024/06/05 17:15

运算符

说明

.[ ] ( )

字段访问、数组索引、函数调用和表达式分组

++ -- - ~ ! delete new typeof void

一元运算符、返回数据类型、对象创建、未定义的值

* / %

相乘、相除、求余数

+ - +

相加、相减、字符串串联

<< >> >>>

移位

< <= > >= instanceof

小于、小于或等于、大于、大于或等于、是否为特定类的实例

== != === !==

相等、不相等、全等,不全等

&

按位“与”

^

按位“异或”

|

按位“或”

&&

逻辑“与”

||

逻辑“或”

?:

条件运算

OP=

赋值、赋值运算(如 += 和 &=)

,

多个计算

 多数运算符都具有从左向右的结合性,只有一元运算符、条件运算符和赋值运算符具有从右向左的结合性。

w = x = y = z;//等价于:w = (x = (y = z));
q = a ? b : c ? d : e ? f : g;//等价于:q = a ? b : (c ? d : (e ? f : g));  


1例子:

a = 1;b = a++ + a-- * a++;console.log(a,b);//2 3
注意a++与++a的区别;

2例子:

new Date().getTime();//不会报错,new的优先级很高

0 0
原创粉丝点击