什么是 JavaScript >>> 运算符以及如何使用它?
JavaScript >>> 表示零填充右移运算符。它也称为无符号右位移运算符。它属于按位运算符的类别。位运算符将操作数视为 32 位整数并对其二进制表示进行运算。
零填充右移 (>>>)运算符:
它是一个二元运算符,其中第一个操作数指定数字,第二个操作数指定要移位的位数。运算符将第一个操作数的位移动第二个操作数指定的位数。这些位向右移动,多余的位被丢弃,而从左侧添加 0 位。当符号位变为 0 时,运算符( >>> ) 返回一个 32 位非负整数。
例子:
Input:
A = 6 ( 00000000000000000000000000000110 )
B = 1 ( 00000000000000000000000000000001 )
Output:
A >>> B = 3 ( 00000000000000000000000000000011 )
句法:
result = expression1 >>> expression2
>>> 和 >> 之间的区别:
这两者之间的区别在于无符号零填充右移运算符(>>>)从左边用零填充,而有符号右移位运算符(>>)从左边用符号位填充,因此它保持移位时整数值的符号。
示例:此示例实现了 >>>运算符的使用:
- 程序:
>>> Operator in JavaScript GeeksforGeeks
The >>> Operator in JavaScript
- 输出:
解释:对于非负数,零填充右移(>>>)和符号传播右移(>>)给出相同的输出。例如,9 >>> 2 和 9 >> 2 给出相同的结果,即 2。但对于负数,-9 >>> 2 给出 1073741821 和 -9 >> 2 给出 -3 作为输出。
Case 1: non-negative number 12 (base 10): 00000000000000000000000000001100 (base 2) -------------------------------- 12 >>> 2 (base 10): 00000000000000000000000000000011 (base 2) = 3 (base 10) Case 2: negative number -10 (base 10): 11111111111111111111111111110110 (base 2) -------------------------------- -10 >>> 3 (base 10): 00011111111111111111111111111110 (base 2) = 536870910 (base 10)