全部:
如何正确地将非常大的数字(至少32位)转换为字符数组?
例如:
var n= 111111122222233333334444444445555555555666666677777777788888888888
谢谢,
发布于 2018-10-20 07:56:35
如果你在javascript中处理非常大的数字(任何大于Number.MAX_SAFE_INTEGER
的数字),你必须以不同的方式处理这个数字,而不是处理一个普通的整数。
有几个库可以帮助实现这一点,所有这些库基本上都将数字视为不同的类型-例如字符串-并提供用于执行各种操作和计算的自定义方法。
例如,如果您只需要整数,则可以使用BigInteger.js。下面是一个实现:
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)?
发布于 2018-10-20 07:49:07
如果您没有破坏JavaScript的最大整数值,那么您可以使用:
var n = 123456789;
var l = n.toString().split('');
这将得到一个数组,其中第一个值是1
字符,第二个值是2
,依此类推。
发布于 2018-10-20 07:49:59
您可以通过调用toString
获取数字的字符串表示形式,然后使用Array.from
将其转换为字符数组。
var number = 123456789;
console.log(Array.from(number.toString()));
var bigNumber = "34534645674563454324897234987289342";
console.log(Array.from(bigNumber));
https://stackoverflow.com/questions/52901142
复制相似问题