javascript - 执行长循环

标签 javascript html

我想执行一个循环,在不重载的情况下将字符串写入 div。我在名为 names 的全局 array 中得到了一个名称列表。 数组 中填充了大约 2500 个名称。现在我想使用 ajaxdiv 中写入名称。但是当我想循环名称时,脚本有点过载并在客户端发出警报时停止。这是我的循环:

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/

相关文章:

javascript - 高度 : 100% foils flexbox "stick scrollbar to bottom unless moved"

python - 借助xpath从没有类属性的元素中获取值

javascript - 如何显示与所选数字相对应的多个表单字段?

html - 除非是纯文本,否则 SVG foreignObject 内容不会显示

javascript - 在 html 页面中显示 javascript 代码

php - HTML5 内容可编辑

javascript - webgl 试图画一个三 Angular 形

javascript - 如何执行我的代码以获得想要的结果

javascript - 在所有异步函数完成后执行一个函数?

javascript - 使用 React 突出显示列表中的项目时的性能