数组在JavaScript中不能超过7741个元素

时间:2016-12-23 19:25:28

标签: javascript node.js

我正在使用Node.js.我有以下javascript代码。

var length=9980;
this.distance= [];//hold distance
this.cost= [];   //hold time cost   

 console.log("before create distance and cost arrays"); 
 console.log("length" + length);   
 for(var i=0; i < length;i++)
 {   
    console.log("creating cost : " + i );       
    this.distance[i] = new Array(length);
    this.cost[i] = new Array(length);
 }; 

由此,我想创建

的二维数组
 distance, cost

如上所示。

报告错误的问题。

enter image description here

数组应该可以容纳数百万个元素,但是存在这样的错误。

有什么问题?我怎样才能使它发挥作用?

1 个答案:

答案 0 :(得分:3)

我认为你正在遇到节点的默认内存限制。

尝试使用--max_old_space_size = flag添加运行您的节点应用程序。

node --max_old_space_size=4096 app.js

根据http://prestonparry.com/articles/IncreaseNodeJSMemorySize/,该数字以兆字节为单位,因此这可以为您提供4GB的内存上限。