3
A
回答
3
使用$(this)
調用至少兩個(也可能多於兩個)函數並在您每次使用它時分配一個對象(消耗最終必須回收的內存)。如果你只是要重複使用相同的東西,那麼這就是所有額外的工作。我建議調用它一次,然後緩存結果(例如,在函數中),而不是有十幾行$(this).foo();
$(this).bar();
。
$
是爲jQuery
函數的別名,就像這樣:
var jQuery = function(selector, context) {
// The jQuery object is actually just the init constructor 'enhanced'
return new jQuery.fn.init(selector, context);
}
正如你可以看到,它創建了一個對象,調用構造函數jQuery.fn.init
。 函數然後必須弄清楚它在做什麼,因爲jQuery使用jQuery
函數來處理18個不同的事情。我並不是說它不會很快做到,但爲什麼要做所有額外的工作。 :-)
編輯:在你傳遞一個DOM元素進去(這通常是什麼$(this)
正在做)的情況下,jQuery.fn.init
不作任何進一步的函數調用。所以「只是」兩個加上分配。
0
$函數將讓jQuery對象的新實例(或檢查所有現有的,我不知道現在的id怎麼獨一無二的作品),但它可以在一個循環中的巨大的開銷/每個功能。
所以在這些情況下,答案是肯定的,在其他情況下,答案可能並不重要。
不,絕對不只是關於角色。
相關問題
- 1. jQuery的緩存
- 2. 使用POST緩存jQuery緩存
- 3. 緩存使用jQuery
- 4. 對象引用和緩存
- 5. JavaScript對象引用緩存
- 6. 使getimagesize()引用緩存值
- 7. 使用jQuery緩存,緩存jQuery可排序對象
- 8. jQuery緩存XML
- 9. 緩存與索引
- 10. 使用jQuery控制緩存
- 11. 緩存選擇使用jQuery
- 12. Rails的引擎不緩存
- 13. 在jQuery中緩存或不緩存$(this)
- 14. 檢查HTTP緩存上的空引用
- 15. 對緩存項目(DataTable)的.NET引用
- 16. 無用的Git緩存/索引對象?
- 17. 啓用緩存的HttpWebRequest引發異常
- 18. W3總緩存不緩存JavaScript緩存之前加載CDN jquery
- 19. Jquery對象緩存
- 20. 緩存JSON:Apache,PHP,jQuery
- 21. jQuery緩存元素
- 22. 緩存問題jquery
- 23. jquery,會話,緩存
- 24. jQuery fadeToggle緩存/ localStorage
- 25. jQuery的ajax請求緩存
- 26. jQuery的遞延AJAX緩存
- 27. 緩存jQuery的收集組
- 28. 緩存jQuery的變量
- 29. 選擇器的jQuery緩存
- 30. jQuery的負載緩存