探索 jQuery 中 JavaScript 封裝的語法
在檢查 jQuery 1.4 原始碼時,可能會遇到以下封裝語法:
在檢查 jQuery 1.4 原始碼時,可能會遇到以下封裝語法:(function( window, undefined ) { //All the JQuery code here ... })(window);
「undefined」的意思
括號內的「undefined」變數不是保留關鍵字。相反,它是一個可以分配新值的普通變數。在這種情況下,jQuery 將“undefined”設為“undefined”,以確保全域“undefined”變數保持真正的未定義狀態。「window」的意義
「window」變數指的是全域 JavaScript 物件。透過將「window」作為參數傳遞給匿名函數,jQuery 建立了對全域物件的本機參考。這種本地引用增強了效能。 當 JavaScript 搜尋變數時,它首先檢查本地範圍。如果在本地沒有找到該變量,則搜尋將繼續到下一個範圍,依此類推,直到到達全域範圍。透過建立對全域物件的本機引用,JavaScript 可以快速定位“視窗”,而無需搜尋所有範圍。 這種優化,正如 Nicholas C. Zakas 在他的文章《加速你的 JavaScript》中所描述的那樣,」顯著提高了 jQuery 庫的執行速度。以上是為什麼 jQuery 使用 `(function(window, undefined){...})(window);`?的詳細內容。更多資訊請關注PHP中文網其他相關文章!