Operator | Description |
---|---|
~ |
Unary bitwise complement |
<< |
Signed left shift |
>> |
Signed right shift |
>>> |
Unsigned right shift |
& |
Bitwise AND |
^ |
Bitwise exclusive OR |
| |
Bitwise inclusive OR |
~按位取反,var a = 10; var b = ~a;输出b-11
因为:对a的位进行取反,结果为 11110101,这是补码形式,要显示原码的值,符号位不变(最高位),其他位按位取反(10001010),再加1(10001011),最高位为1标识负数,1011就是十进制的11(1*2^3+1*2^1+1*2^0=11)
有符号左移,右移,无符号右移不解释了
&二进制按位与运算,都为1则为1,否则为0
^二进制按位异或运算,不认同则为1相同则为0
| 二进制按位或运算,都为0则为0,否则为1