我有一个全局数组,其中包含我当前正在使用的元素的 ID。每一秒我都会运行一个对这些元素进行处理的例程。
var ids = ['abc', 'def', 'zyx']
// the following code happens every second
for (var i = 0; i < ids.length; i++) {
el = $("#" + ids[i])
// do stuff with el
}
我的问题:执行以下操作是否会导致性能显着下降或改进:
var ids = []
ids.push($("#abc"))
ids.push($("#def"))
ids.push($("#zyx"))
for (var i = 0; i < ids.length; i++) {
el = ids[i]
// do stuff with el
}
最佳答案
您不会看到任何显着性能增长,但这只是一个好习惯 - 不要两次请求该事物,只要您可以在某处保留一次即可。
所以我的最后建议:仅缓存 jquery 对象一次,然后使用 jquery 对象数组
关于jquery - jQuery 对象数组的性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9109148/