[英]Is there a performance gain from caching $(this)?
我經常在jQuery事件處理程序中使用$(this)
並且永遠不會緩存它。 如果我願意的話
var $this = $(this);
並將使用變量而不是構造函數,我的代碼將獲得任何顯着的額外性能?
JS Perf測試用於衡量此優化的性能增益: http : //jsperf.com/jquery-this-caching
這是一個微不足道的微小的微小的 ,是的。 重大? 沒有。
每次執行$(this)
,都會導致多個函數調用和幾個內存分配。 函數調用既不在這里也不在那里(即使在IE6上,我也很驚訝地學習 ),但內存流失可能會增加不能很好地處理內存管理的瀏覽器。 大多數現代的。
我總是將結果保存到變量中,因為我不喜歡調用函數和不必要地分配對象。 它可以節省那些parens的輸入。 :-)
是的,因為每次你執行$(this)
都會創建一個新的jquery對象。
但是,如果你的表現超過1000倍,你將無法獲得重要的表現
並且緩存多次使用的對象是一種很好的做法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.