For example, this is -1
a.k.a. 0xFFFFFFFF
as a signed 32-bit:
0xFFFFF000 | 0xFFF
However, this is this is 4294967295
a.k.a. 0xFFFFFFFF
as an unsigned 32-bit:
(0xFFFFF000 | 0xFFF) >>> 0
Can I rely on using this >>> 0
trick to keep my bitwise operations as unsigned 32-bit?
Nothing in the spec[1] indicates that this should fail, and it seems to work fine in a few simple tests...
[1] https://www.ecma-international.org/ecma-262/9.0/index.html#sec-unsigned-right-shift-operator