繁体   English   中英

如何在 Javascript 中存储大于 2147483647 的整数?

[英]How can I store an integer number that's greater than 2147483647 in Javascript?

据我所知,整数范围从

 -2147483648 through 2147483647

我很困惑,因为我注意到 javascript 中一些对 big int 的引用。 有人可以解释我如何存储大于 2147483647 的整数吗?

为了超越 JavaScript 的内部数字限制,请使用类似bignum 库的东西(我发现的只是一个随机,研究一个好的库作为练习留给 OP)。

BigInteger.js是一个用于 Javascript 的任意长度整数库,允许对无限大小的整数进行算术运算,尽管有内存和时间限制。

根据您所做的数字,您可以处理高达 +/- (2^53)-1 或9007199254740991

虽然并非所有浏览器都支持Number.MAX_SAFE_INTEGER但您可以使用以下方法计算它:

Math.pow(2, 53) - 1 

注意:这在纯数学函数中有效,但许多按位运算仅限于 16 位整数,以及数组中的索引。

更多细节可以在这里找到: https : //developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/MAX_SAFE_INTEGER

我们可以通过两种方式存储 big int

const bigIntVal=123243435454656565657575n;

const bigIntVal=BigInt("123243435454656565657575");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM