如果有人想知道...
我试图找出 Javascript 可以表达的最大整数,它可能是连续数字范围的一部分。起初,我认为只使用 Number.MAX_VALUE 就可以了,但这是一个愚蠢的假设。
Javascript 将所有数字存储为双精度浮点数,遵循 IEEE 754 标准。
Number.MAX_VALUE 等于
7fef ffff ffff ffff, approximately 1.7976931348623157e+308.
可以以这种格式存储的下一个最小数字是
7fef ffff ffff fffe, approximately 1.7976931348623155e+308.
这两个数字之间显然存在相当大的差距,导致诸如
Number.MAX_VALUE == (Number.MAX_VALUE-1) //true
现在,这并没有吓到我或任何事情,这只是事实。我正在寻找的是当这个下一个条件在 JS 中第一次为真时
x == (x+1) //true