按位&在javascript中没有返回预期的结果

use*_*651 6 javascript bitwise-and

我在javascript中使用BitWise AND运算符.

我有两个32位的nunber

4294901760 (11111111 11111111 00000000 00000000) and

4294967040 (11111111 11111111 11111111 00000000)
Run Code Online (Sandbox Code Playgroud)

当我和他们按位时, 4294901760 & 4294967040我得到-65536,但结果应该是4294901760.

任何人都可以指导我,我错过了什么吗?或者做到这一点的正确方法是什么.谢谢

Jac*_*ace 8

console.log((4294901760 & 4294967040) >>> 0);
Run Code Online (Sandbox Code Playgroud)

附加>>> 0以将其操作解释为未签名.

小提琴:http :
//jsfiddle.net/JamZw/

更多信息:
32位无符号整数的按位运算?