JavaScript 位运算符参考手册
JavaScript 位运算符
位运算符作用于 32 位数字。运算中的任何数值操作数都会被转换为 32 位数字。结果会被转换回 JavaScript 数字。
| 操作 | 名称 | 示例 | 等同 | 结果 | 说明 |
|---|---|---|---|---|---|
| & | 与(AND) | x = 5 & 1 | 0101 & 0001 | 0001 | 1 |
| | | 或(OR) | x = 5 | 1 | 0101 | 0001 | 0101 | 5 |
| ~ | 非(NOT) | x = ~ 5 | ~0101 | 1010 | 10 |
| ^ | 异或(XOR) | x = 5 ^ 1 | 0101 ^ 0001 | 0100 | 4 |
| << | 左移(Left Shift) | x = 5<< 1 | 0101<< 1 | 1010 | 10 |
| >>> | 右移(Right Shift) | x = 5 >>> 1 | 0101 >>> 1 | 0010 | 2 |
| >> | 右符号(Signed Right) | x = 5 >> 1 | 0101 >> 1 | 0010 | 2 |
注意
上表使用 4 位无符号数。由于 JavaScript 使用 32 位有符号数,因此 ~ 5 不会返回 10,而是返回 -6。
~00000000000000000000000000000101 (~5)
will return
11111111111111111111111111111010 (-6)
了解更多:
学习我们的JavaScript 位运算教程。
浏览器支持
位运算符是 ECMAScript 1(JavaScript 1997)的一项特性。
所有浏览器均支持位运算符:
| Chrome | Edge | Firefox | Safari | Opera |
