使用for循环使用整数序列填充数组,而不会崩溃Chrome

时间:2015-01-23 00:51:31

标签: javascript arrays google-chrome for-loop crash

我想填充一个数组,其中包含1 000 000到10 000 000之间的所有可能的整数。当我运行下面的循环时,它会崩溃chrome选项卡。我怎么能做到这一点?

var arrList = [];
var list;

function gen() {
  for (var i = 1000000; i < 10000000; i++) {
    arrList.push(i);
  }
}

gen();
list = arrList.join(' '); // This line causes the crash
console.log(list);

1 个答案:

答案 0 :(得分:0)

导致崩溃的console.log(list)。控制台无法处理尝试显示长度为72 MB的字符串。

当我删除该行时,脚本会成功运行,但需要几秒钟。这会在2-3秒后发出71999999警报。

&#13;
&#13;
var arrList = [];
var list;

function gen() {
  for (var i = 1000000; i < 10000000; i++) {
    arrList.push(i);
  }
}

gen();
list = arrList.join(' '); 
alert(list.length);
&#13;
&#13;
&#13;