这个问题的答案可能很明显,但我无法在 Mozilla 文档中或通过粗略搜索在 Google 上找到它。
如果你有这样的代码
Number.MAX_VALUE + 1; // Infinity, right?
Number.MIN_VALUE - 1; // -Infinity, right?
然后我希望向 Number.MAX_VALUE 添加任何内容会将其推到Infinity
. 结果只是Number.MAX_VALUE
向我吐口水。
然而,当在 Chrome JS 控制台中玩耍时,我注意到它实际上并没有变成Infinity
直到我添加/减去足够多:
Number.MAX_VALUE + Math.pow(100,1000); // now we hit Infinity
Number.MIN_VALUE - Math.pow(100,1000); // -Infinity at last
Number.MAX_VALUE
和之间的这个“缓冲区”的解释是什么Infinity
?