【发布时间】:2010-10-17 10:16:52
【问题描述】:
我正在使用 Javascript 来解析一个包含大约 3,500 个元素的 XML 文件。我正在使用 jQuery “each”函数,但我可以使用任何形式的循环。
问题是浏览器在循环执行时冻结了几秒钟。在不降低代码速度的情况下停止冻结浏览器的最佳方法是什么?
$(xmlDoc).find("Object").each(function() {
//Processing here
});
【问题讨论】:
-
获得更快的语言!不,真的:除非绝对必要,否则不要为此使用 JS - 如您所见,它是 1) 单线程和 2) 慢。
-
这是客户端功能,需要JS。
-
@Triptych - 他的选择是什么?当然有人会希望像这样的繁重工作可以在服务器端执行,但由于我们不知道他的情况,最好假设他有充分的理由在客户端执行此操作,并且在 Web 应用程序中工作客户端时,您只能在 Javascript 和... Javascript 之间进行选择。
-
JavaScript 中重计算的最佳实践stackoverflow.com/q/13947592/821057
标签: javascript jquery performance loops