在我使用underscore.js和jquery构建的简单Web应用程序中。对于所有人(js对象)的列表,我筛选出他们访问过的所有地方(js对象)的列表。人员列表是一个带有td
的html表格,具有位置图像图标,点击时显示他们访问的所有地点的列表。 只有在至少有一个地方参观过的人才能看到图标。这里的问题是人和地方的数量在2000
,100
。所以下面的代码执行2000*100
组合。浏览器抱怨我的脚本无响应。代码在下面提供Underscore.js性能问题 - 我可以使用_.defer
_.each(peopleList, function (person, index, list) {
//filter the respective places for people
var visitedPlaces = _.filter(places, function (place) {
return place.PeopleId == person.Id;
});
if (_.isEmpty(visitedPlaces)) {
$("a#" + place.PeopleId).remove();
}
});
死简单是不是它。对于每个人来说,检查访问过的地方是否有他跟踪过。我如何优化上面的代码来解锁和响应。在_.defer
和_.delay
试图把一些地方却没有改善
相关:http://stackoverflow.com/questions/13955976/how-can-i-defer-a-jquery-each-loop – m90 2013-04-24 05:45:43
@ M90感谢您的链接将更新答案如果它解决了我的问题 – Deeptechtons 2013-04-24 05:46:25
什么是'project.ProjectID'? – Tomalak 2013-04-24 06:01:46