2013-01-14 96 views
0

我正在寫一個庫,我需要存儲一些數據以便能夠快速處理DOM元素。我不知道是否應該存儲元素ID(字符串)並執行$(document.getElementById(this.idVar)).jqueryMagic()或存儲元素對象引用(對象HTML *元素)並執行$(this.eleVar).moreJqueryMagic()。我不介意可讀性,我只是想知道每種方法和性能差異在內存空間上的差異。存儲到變量元素id vs元素對象引用

在此先感謝!

+0

我認爲它會是更好的存儲的DOM元素,所以瀏覽器不必再次搜索DOM。 –

回答

0

如果在這個級別上的性能是一個問題,你不應該使用jQuery,它是一個比這樣的細節更大的性能豬。 (這並不是說jQuery不好,你通常在性能上付出代價,但這通常不是問題。)

如果您訪問對象多次,一般認爲存儲對象由於您消除了一系列的解引用,因此參考速度更快。

如果你使用jQuery,你應該在一般商店jQuery的包裝而不是原始元素,以避免造成多餘的包裝:

this.jqVar = $(document.getElementById(this.idVar)) 
this.jqVar.jqueryMagic()