我想将这个无符号数字移到右边:1479636484000 7位。这在JavaScript中可行吗?



1479636484000 >> 7




1479636484000 >>> 7


返回错误的答案(对我来说)。正确答案应为11559660031。
我猜这里涉及一些符号,也许这个数字太大而无法支持。但是,有什么聪明的方法可以解决它吗?

最佳答案

JavaScript中的按位运算首先将数字截断为32位整数。您的人数太大。克服该限制的“聪明方法”是实现自己的数字库。

请注意,除以128的浮点数会为您提供正确的答案(如果您除去分数)。

08-15 21:54