JavaScript最大整数数字的情况

时间:2013-09-17 08:55:31

标签: javascript numbers standards

已知Javascript有2 53 (9007199254740992,或0x20000000000000)作为其Number对象的最大整数值,为discussed here。我仍然不明白为什么Number(0x20000000000000)+1会产生0x20000000000000,但Number(0x20000000000000)+2会产生0x20000000000002(9007199254740994)。有人可以解释一下吗?

1 个答案:

答案 0 :(得分:2)

引用此Wikipedia article

  

在2 ^ 52 = 4,503,599,627,370,496和2 ^ 53 = 9,007,199,254,740,992之间,可表示的数字正好是整数。对于下一个范围,从2 ^ 53到2 ^ 54,所有内容都乘以2,因此可表示的数字是偶数。