nodejs一个数组可以存储多大的数据?
发布于 6 年前 作者 gyj1278 4120 次浏览 来自 问答

定义了一个数组,一直往里放东西,大bug上线了,请问,这个数组能放多大的数据?如果超过,会报什么错?

6 回复

应该会oom吧

来自酷炫的 CNodeMD

用arraybuffer 要比数组晚点炸吧

一句话,别这么做

64位机器老生代默认1.4G。超过1.4G内存就爆了。

@noe132 64的是1.7G吧 32的是1.4

一个范围在 0 到 232-1 之间的整数,此时将返回一个 length 的值等于 arrayLength 的数组对象(言外之意就是该数组此时并没有包含任何实际的元素,不能理所当然地认为它包含 arrayLength 个值为 undefined 的元素)。如果传入的参数不是有效值,则会抛出 RangeError 异常。

你可以把length设置大于2^32,就能看到错误了 https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array

回到顶部