挖掘JS刚发现了一些新东西:

n = 0xffffffff
4294967295
n
4294967295
n << 1
-2
n * 2
8589934590
(n << 1) == (n * 2)
false
n + 1
4294967296


这是内置FireFox(51.0.1 64位)调试器的控制台输出...

到目前为止,我读过的东西(w3school等)不允许我怀疑这种行为。

可以吗?还是我错过了什么?

...To be continued...

最佳答案

n << b handles n and the result as int 32,而n * 2 handles n and the 2number

请注意4294967295 << 0将是-1

09-25 20:26