gpt4 book ai didi

javascript - 为什么这个 Javascript 循环需要一分钟进行 100 次迭代?

转载 作者:行者123 更新时间:2023-12-01 01:58:33 27 4
gpt4 key购买 nike

我在程序中使用以下代码,但似乎这几行代码执行起来花费了太多时间。对于 100 次迭代,大约需要 1 分钟。对于 200 多次迭代,我的浏览器显示一条警告消息,指出脚本花费了太多时间。根据场景,可以将 500 多个 id 推送到数组中。

for (var i = 0; i < arrid.length; i++)
{
$("#" + outerDiv + "> div[id=" + arr[i] + "]").attr("class", "selected");
}

arrid 是一个 div id 数组。 Outerdiv 是 arrid 中所有这些 div id 的父 div。 arr ids 无法直接访问,必须使用父 div 引用,即outerDiv。

最佳答案

你可以做的一件快速的事情就是缓存你的选择器,这样 jQuery 就不必查询 dom 500 多次。

var $div = $("#" + outerDiv);

for (var i = 0; i < arrid.length; i++)
{
$div.children("div[id=" + arr[i] + "]").attr("class", "selected");
}

再想一想,由于您有一个 id 列表,因此您不需要任何其中的内容,因为每个 dom 的 id 应该是唯一的。

for (var i = 0; i < arrid.length; i++)
{
$("#" + arr[i]).attr("class", "selected");;
}

关于javascript - 为什么这个 Javascript 循环需要一分钟进行 100 次迭代?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5702481/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com