JavaScript 运算符优先级

运算符优先级(Operator Precedence)描述了算术表达式中运算的执行顺序。

乘法 (*) 和除法 (/) 的优先级高于加法 (+) 和减法 (-)。

实例

与传统数学一样,先进行乘法运算:

let x = 100 + 50 * 3; //250

使用圆括号时,先计算圆括号内的运算:

let x = (100 + 50) * 3; //450

优先级相同的运算(如 * 和 /)从左到右计算:

let x = 100 / 50 * 3; //6

括号中的表达式在表达式的其余部分之前计算,函数在结果用于表达式的其余部分之前执行:

优先级

运算符

描述

例子

18

( )

表达式分组

(100 + 50) * 3

17

.

属于成员

person.name

17

[]

属于成员

person["name"]

17

?.

可选链

ES2020

x ?. y

17

()

函数调用

myFunction()

17

new

带参的新建

new Date("June 5,2022")

16

new

不带参的新建

new Date()

后缀递增在前缀递增之前执行。

15

++

后缀递增

i++

15

--

后缀递减

i--

14

++

前缀递增

++i

14

--

前缀递减

--i

NOT 运算符

14

!

逻辑非

!(x==y)

14

~

按位非

~x

一元运算符

14

+

一元加

+x

14

-

一元减

-x

14

typeof

数据类型

typeof x

14

void

评估空

void(0)

14

delete

属性删除

delete myCar.color

算术运算符

指数运算在乘法之前执行。

乘法和除法在加法和减法之前执行。

13

**

指数运算

ES2016

10 ** 2

12

*

10 * 5

12

/

10 / 5

12

%

除法余数

10 % 5

11

+

10 + 5

11

-

10 - 5

11

+

串联

"Bill" + "Gates"

移位运算符

10

<<

左移

x << 2

10

>>

右移(带符号)

x >> 2

10

>>>

右移(无符号)

x >>> 2

关系运算符

9

in

对象中的属性

"PI" in Math

9

instanceof

对象的实例

x instanceof Array

比较运算符

9

<

小于

x < y

9

<=

小于或等于

x <= y

9

>

大于

x > y

9

>=

大于或等于

x >= Array

8

==

等于

x == y

8

===

严格相等

x === y

8

!=

不相等

x != y

8

!==

严格不相等

x !== y

位运算符

7

&

按位与

x & y

6

^

按位异或

x ^ y

5

|

按位或

x | y

逻辑运算符

4

&&

逻辑与

x && y

3

||

逻辑或

x || y

3

??

空值合并

ES2020

x ?? y

条件(三元)运算符

2

? :

条件

? "yes" : "no"

赋值在其他操作之后执行。

2

=

简单赋值

x = y

2

:

冒号赋值

x: 5

2

+=

加法赋值

x += y

2

-=

减法赋值

x -= y

2

*=

乘法赋值

x *= y

2

**=

指数赋值

x **= y

2

/=

除法赋值

x /= y

2

%=

取余赋值

x %= y

2

<<=

左移赋值

x <<= y

2

>>=

右移赋值

x >>= y

2

>>>=

无符号右移

x >>>= y

2

&=

位与赋值

x &= y

2

|=

位或赋值

x |= y

2

^=

位异或赋值

x ^= y

2

&&=

逻辑与赋值

x &= y

2

||=

逻辑或赋值

x ||= y

2

=>

箭头

x => y

2

yield

暂停 / 恢复

yield x

2

yield*

委托运算符

yield* x

2

...

展开运算符

... x

1

,

逗号

x , y

  • 11
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值