Skip to content

运算符

算术运算符

在下列运算中假定 A = 5,B = 2

运算符描述实例
+加法A + B 输出结果 7
-减法A - B 输出结果 3
*乘法A * B 输出结果 10
/除法B / A 输出结果 2.5
%取模(余数)B % A 输出结果 1
++自增A++ 输出结果 6
--自减A-- 输出结果 4

在自增和自减中,运算符的书写位置会也会影响结果。如:++变量先自增后赋值,而 变量++ 则是先赋值后自增(自减也是同理)

赋值运算符

运算符描述等同于
=A = B
+=A += BA = A + B
-=A -= BA = A - B
*=A *= BA = A * B
/=A /= BA = A / B
%=A %= BA = A % B

关系运算符

在下列运算中假定 X = 5

运算符描述实例
==等于x == 8 false
x == 5 true
===绝对等于
值和类型均相等
x === "5" false
x === 5 true
!=不等于x != 8 true
!==严格不等于运算符
值和类型有一个不相等,或两个都不相等
x !== "5" true
x !== 5 false
>大于x > 8 false
<小于x < 8 true
>=大于或等于x >= 8 false
<=小于或等于x <= 8 true

逻辑运算符

运算符描述案例
&&and[true/false] && [true/false]
双方必须同时为 true 整体结果才会为 true
||or[true/false] || [true/false]
只要有一方为 true 整体结果就是 true
!not![true/false]
对结果取反

位运算符

位运算符会先将操作数转换为 32 位整数(超出范围的会截断),再按二进制位进行运算,最终返回十进制结果

名称运算符案例(可直接复制运行)
按位与&console.log(5 & 3); // 输出 1
按位或|console.log(5 | 3); // 输出 7
按位非~console.log(~5); // 输出 -6
按位异或^console.log(5 ^ 3); // 输出 6
左移<<console.log(5 << 1); // 输出 10
有符号右移>>console.log(5 >> 1); // 输出 2
无符号右移>>>console.log(-5 >>> 1); // 输出 2147483645
按位与赋值&=let a=5; a &=3; console.log(a); // 输出 1
按位或赋值|=let a=5; a |=3; console.log (a); // 输出 7
按位异或赋值^=let a=5; a ^=3; console.log(a); // 输出 6
左移赋值<<=let a=5; a <<=1; console.log(a); // 输出 10
有符号右移赋值>>=let a=5; a >>=1; console.log(a); // 输出 2
无符号右移赋值>>>=let a=-5; a >>>=1; console.log(a); // 输出 2147483645