JavaScript 无符号位移运算符 >>> 三个大于号 的使用方法

JavaScript 无符号位移运算符 >>> 三个大于号 的使用方法

JavaScript中的无符号位移运算符是用三个大于号来表示的

计算方法

例 100>>>2

100的二进制是

01100100

向右移2位后为

00011001

最后结果为25

100>>>2==25

无符号位移(>>>)和有符号位移(>>)的区别是

有符号位移运算时如果数字为正数时位移后在前面补0,为负数时则在位移后在前面补1

100>>2==25 和上面的计算方法一样

如果100为负数

-100>>>2

-100的二进制为-_-好长。

1111111111111111111111111111111111111111111111111111111111111100

移除最后2位后

11111111111111111111111111111111111111111111111111111111111111

之后在前面补两位

1111111111111111111111111111111111111111111111111111111111111111

变为十进制后结果为-1

所以

-100>>>2=-1

原文地址:https://www.cnblogs.com/douglasvegas/p/4736008.html