首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在JavaScript中存储非常大的二进制数的最佳方法是什么?

在JavaScript中存储非常大的二进制数的最佳方法是什么?
EN

Stack Overflow用户
提问于 2013-10-12 08:36:34
回答 2查看 1.1K关注 0票数 1

我目前正在学习JavaScript,我很惊讶没有内置的方式来处理二进制数。我必须处理高达2^4096的整数,所以我不能在我的微积分中使用JS整数。

我的第一个想法是使用1和0的数组。但这并不令人满意,因为简单的乘2需要移动整个表。

那么,如何在JavaScript中有效地处理二进制数呢?

我不想使用任何图书馆。我感兴趣的是它是如何工作的,而不是使用他人的抽象。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-12 08:55:08

Javascript没有任何biginteger类型,因此需要使用数组来保存这些信息。

值为0和1的数组将使实现函数变得容易,但效率不高。

Javascript中的常规数字是一个双精度浮点数,因此它可以容纳52位的数字信息(参考文献),但是您可以使用稍微少一点的方法来远离任何舍入错误,例如48位。

Javascript中的位运算符与32位整数一起工作,也就是说,在与位运算符一起使用时,double被转换为32位整数。如果要对数据使用按位运算符,可以选择在数组中存储每项32位。

票数 1
EN

Stack Overflow用户

发布于 2013-10-12 08:59:40

JavaScript只支持53位整数。

存储“大整数”的最佳方法是将它们转换为服务器端的字符串。如果你想操纵它们,我建议你看看这个库https://github.com/rauschma/strint

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19336620

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档