我有一個全局數組,包含我目前使用的元素的ID。每一秒我都會運行一個例程來處理這些元素。jQuery對象數組的性能
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對象的開銷。 – 2012-02-02 08:54:47
-1我必須低估這一點,因爲它絕對不會提高性能*極大*。有一個改進,這是值得的,但它仍然只是幾乎沒有明顯的。 – Guffa 2012-02-02 09:17:23
好吧,我可以理解也許不是很大,但它似乎是一個首選的方法。另外我不知道jsPerf,所以我發現它是一個有用的答案。 – 2012-02-03 00:11:57