javascript - 如何在javascript中分割一个大整数

标签 javascript

全部:

如何正确地将非常非常大的数字(至少 32 位)转换为字符数组?

例如:

var n = 111111122222233333334444444445555555555666666677777777788888888888

谢谢

最佳答案

如果您在 javascript 中处理非常大的数字(任何大于 Number.MAX_SAFE_INTEGER),您必须以不同于普通整数的方式处理该数字。

有几个库可以帮助实现这一点,所有这些库基本上都将数字视为不同的类型(例如字符串),并提供用于执行各种操作和计算的自定义方法。

例如,如果您只需要整数,则可以使用 BigInteger.js 。下面是一个实现:

const bigInt = require("big-integer")

const largeNumber = bigInt(
  "111111122222233333334444444445555555555666666677777777788888888888",
)
const largeNumberArray = largeNumber.toString().split('')

另请查看有关在 Javascript 中处理大数字的其他一些 stackoverflow 问题和资源:

npm 的大号-> https://www.npmjs.com/package/big-number

What is the standard solution in JavaScript for handling big numbers (BigNum)?

Extremely large numbers in javascript

What is the standard solution in JavaScript for handling big numbers (BigNum)?

http://jsfromhell.com/classes/bignumber

http://www-cs-students.stanford.edu/~tjw/jsbn/

关于javascript - 如何在javascript中分割一个大整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52901142/

相关文章:

javascript - Typescript 返回值或柯里化(Currying)函数

javascript - 即使在 return 语句之后代码仍在执行吗?

javascript - 我想根据相似对象数组中的键动态创建对象值数组

javascript - 编辑按钮不显示

javascript - 侧边栏中的事件列表

javascript - 合并 Material-UI 中的主题配置设置

javascript - XMLHttpRequest 在保存时加载到调用对象

javascript - 如何在 Redis 中找到部分匹配值并在其已存在时进行更新?

javascript - 使用 async.queue 超出最大调用堆栈大小

javascript - 使用 Angular 获取数据 API 调用时出错