Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在javascript中拆分大整数_Javascript - Fatal编程技术网

如何在javascript中拆分大整数

如何在javascript中拆分大整数,javascript,Javascript,全部: 如何正确地将非常大的数字(至少32位)转换为字符数组 例如: 变量n=1111111222223333333444444444444555555566666777777778888 谢谢,如果您没有破坏JavaScript的最大整数值,那么您可以使用: var n = 123456789; var l = n.toString().split(''); 这将得到一个数组,其中第一个值是1个字符,第二个值是2个字符,以此类推。您可以通过调用toString获得数字的字符串表示形式,然后使

全部:

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

例如:

变量n=1111111222223333333444444444444555555566666777777778888


谢谢,

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

var n = 123456789;
var l = n.toString().split('');

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

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

变量编号=123456789; console.logArray.fromnumber.toString; var bigNumber=34534645674563454324897234987289342;
console.logArray.frombigNumber 如果您在javascript中处理非常大的数字,任何大于Number.MAX\u SAFE\u INTEGER的数字都必须以与普通整数不同的方式处理

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

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

const bigInt = require("big-integer")

const largeNumber = bigInt(
  "111111122222233333334444444445555555555666666677777777788888888888",
)
const largeNumberArray = largeNumber.toString().split('')
另外,还可以查看一些其他有关在Javascript中处理大数字的stackoverflow问题和资源:

npm的大数字->


您不能-因为您的示例大于Number.MAX_SAFE_INTEGER-注意:在Chrome and Node中,您可以使用var n=1111111 22222 3333 444444444 5555555555 6666666 7777777 8888888 n;n、 toString.split-不是数字末尾的n数字来自哪里?如果可以的话,最简单的解决方案是从一开始就将其设置为字符串。