詳解jquery外掛中;(function ( $, window, document, undefined )的作用
阿新 • • 發佈:2018-11-20
詳解jquery外掛中;(function ( $, window, document, undefined )的作用
在jquery外掛中我們經常看到以下這段程式碼
1 2 3 |
|
對於很多初學者來說很難明白這表示什麼,下邊我將為大家介紹其相應的作用。
1、程式碼最前面的分號,可以防止多個檔案壓縮合並以為其他檔案最後一行語句沒加分號
2、匿名函式(function(){})();:由於Javascript執行表示式是從圓括號裡面到外面,所以可以用圓括號強制執行宣告的函式。避免函式體內和外部的變數衝突。
3、$實參:$是jquery的簡寫,很多方法和類庫也使用$,這裡$接受jQuery物件,也是為了避免$變數衝突,保證外掛可以正常執行。
4、window, document實參分別接受window, document物件,window, document物件都是全域性環境下的,而在函式體內的window, document其實是區域性變數,不是全域性的window, document物件。這樣做有個好處就是可以提高效能,減少作用域鏈的查詢時間,如果你在函式體內需要多次呼叫window 或 document物件,這樣把window 或 document物件當作引數傳進去
5、最後剩下一個undefined形參了,那麼這個形參是幹什麼用的呢,看起來是有點多餘。undefined在老一輩的瀏覽器是不被支援的,直接使用會報錯,js框架要考慮到相容性,因此增加一個形參undefined