1
这行代码:位或意外的结果
console.log((90000000000000|0).toString());
输出:
-1039687680 (bin -111101111110000110000000000000)
据32-bit signed integer conversion,我想到:
/--discarded--\/---------significant----------\
10100011101101011000010000001111010000000000000 = 90000000000000
│
11000010000001111010000000000000 OR
00000000000000000000000000000000
================================
11000010000001111010000000000000 = -1107795968
sign/\------significant bits-------/
为什么我得到-1039687680代替-1107795968?