JavaScript 运算符用于算数表达式、比较表达式、逻辑表达式、、赋值表达式等,以下是整理的一些 JavaScript 中常用的运算符,表中运算符按优先级排序。
运算符 | 操作简述 | 结合性 | 个数 | 类型 |
---|---|---|---|---|
++ | 前/后增量 | 从右至左 | 1 | lval→num |
— | 前/后减量 | 从右至左 | 1 | lval→num |
– | 求反 | 从右至左 | 1 | num→num |
+ | 转换为数字 | 从右至左 | 1 | num→num |
~ | 按位求反 | 从右至左 | 1 | int→int |
! | 逻辑非 | 从右至左 | 1 | bool→bool |
delete | 删除属性 | 从右至左 | 1 | lval→bool |
typeof | 检测操作数类型 | 从右至左 | 1 | any→str |
void | 返回 undefined 值 | 从右至左 | 1 | any→undef |
*、/、% | 乘、除、取余 | 从左至右 | 2 | num,num→num |
+、- | 加、减 | 从左至右 | 2 | num,num→num |
+ | 字符串连接 | 从左至右 | 2 | str,str→str |
<< | 左移位 | 从左至右 | 2 | int,int→int |
>> | 有符号右移 | 从左至右 | 2 | int,int→int |
>>> | 无符号右移 | 从左至右 | 2 | int,int→int |
<、<=、>、>= | 比较数字顺序 | 从左至右 | 2 | num,num→bool |
<、<=、>、>= | 比较在字母表中的顺序 | 从左至右 | 2 | str,str→bool |
instanceof | 测试对象类 | 从左至右 | 2 | obj,func→bool |
in | 测试属性是否存在 | 从左至右 | 2 | str,obj→bool |
== | 判断相等 | 从左至右 | 2 | any,any→bool |
!= | 判断不相等 | 从左至右 | 2 | any,any→bool |
=== | 判断恒等 | 从左至右 | 2 | any,any→bool |
!== | 判断非恒等 | 从左至右 | 2 | any,any→bool |
& | 按位与 | 从左至右 | 2 | int,int→int |
^ | 按位异或 | 从左至右 | 2 | int,int→int |
| | 按位或 | 从左至右 | 2 | int,int→int |
&& | 逻辑与 | 从左至右 | 2 | any,any→any |
|| | 逻辑或 | 从左至右 | 2 | any,any→any |
?: | 条件运算符 | 从右至左 | 3 | bool,any,any→any |
= | 变量赋值或对象属性赋值 | 从右至左 | 2 | lval,any→any |
*=、/=、%=、+=、-=、&=、^=、|=、<<=、>>=、>>>= | 运算且赋值 | 从右至左 | 2 | lval,any→any |
, | 忽略第一个操作数,返回第二个操作数 | 从左至右 | 2 | any,any→any |
参考文档:《JavaScript 权威指南》
评论 (1)
学习了