gpt4 book ai didi

Javascript 最大整数

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:46:55 25 4
gpt4 key购买 nike

我认为 javascript 的最大整数值为 2^53,但是当我执行以下操作时:

 parseInt(Math.pow(2, 53)) + 10

我正确地得到了 9007199254741002

 (= 9007199254740992 + 10)

这是为什么呢?我只想在数字大于或等于允许的最大整数时使用 bigint.js 库。

最佳答案

9007199254740992 是在您开始遇到精度丢失问题之前 JavaScript 中的最大整数值。考虑以下内容:

> Math.pow(2, 53) + 1
9007199254740992
> Math.pow(2, 53) + 2
9007199254740994
> Math.pow(2, 53) + 3
9007199254740996
> Math.pow(2, 53) + 4

可以看出,结果值并非在所有情况下都准确。这是 float 的限制,因为只有 53 位专用于系数。一旦超过 53 位加一个符号位可以表示的范围,浮点表示将随着值的增加而变得越来越命中或未命中。

关于Javascript 最大整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22838588/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com