首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在javascript中拆分大整数

如何在javascript中拆分大整数
EN

Stack Overflow用户
提问于 2018-10-20 07:44:22
回答 3查看 798关注 0票数 0

全部:

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

例如:

var n= 111111122222233333334444444445555555555666666677777777788888888888

谢谢,

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-10-20 07:56:35

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

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

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

代码语言:javascript
复制
const bigInt = require("big-integer")

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

还可以查看其他一些关于在Javascript中处理大数的堆栈溢出问题和资源:

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/

票数 1
EN

Stack Overflow用户

发布于 2018-10-20 07:49:07

如果您没有破坏JavaScript的最大整数值,那么您可以使用:

代码语言:javascript
复制
var n = 123456789;
var l = n.toString().split('');

这将得到一个数组,其中第一个值是1字符,第二个值是2,依此类推。

票数 0
EN

Stack Overflow用户

发布于 2018-10-20 07:49:59

您可以通过调用toString获取数字的字符串表示形式,然后使用Array.from将其转换为字符数组。

代码语言:javascript
复制
var number = 123456789;

console.log(Array.from(number.toString()));

var bigNumber = "34534645674563454324897234987289342";

console.log(Array.from(bigNumber));

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

https://stackoverflow.com/questions/52901142

复制
相关文章

相似问题

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