2016-07-13 71 views

回答

5

MDN

所有位運算符的操作數轉換爲符號的32位整數的二進制補碼格式。

當解釋爲有符號的32位整數時,值0xd41ddb80表示數字-736240768。這個數字使用任何位運算符將其強制成一個符號的32位整數:

console.log(~~0xd41ddb80) 
console.log(0xd41ddb80 & 0xffffffff) 
console.log(0xd41ddb80 | 0) 

基16當量的-736240768的是-2be22480,那就是你所看到的。

您可以爲任意數量大於或等於0x80000000觀察類似的行爲。

相關問題