我想执行一个循环,在不重载的情况下将字符串写入 div
。我在名为 names
的全局 array
中得到了一个名称列表。 数组
中填充了大约 2500 个名称。现在我想使用 ajax
在 div
中写入名称。但是当我想循环名称时,脚本有点过载并在客户端发出警报时停止。这是我的循环:
for(var i = 0; i < names.length; i++){
document.getElementById('div').innerHTML += names[i] + "<br/>";
}
我还尝试以更小的步长(例如 100)交错循环(因为我认为这样循环不会过载)。我还尝试使用 window.setTimeout("function(i)",0);
和参数 i,每次调用函数时步长 100,直到我达到 length
数组 names
。
我知道有一个简单的方法。但我找不到那种方式......很高兴得到帮助。
谢谢
最佳答案
你可以这样编码:
document.getElementById('div').innerHTML = names.join('<br/>');
这将在单个指令中设置内部 html,解决加载问题。
关于javascript - 执行长循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13930792/