常見(jiàn)格式
(function() {
/*code*/
})()
解釋
包圍函數(shù)(function(){})的第一對(duì)括號(hào)向腳本返回未命名的函數(shù),隨后一對(duì)空括號(hào)立即執(zhí)行返回的未命名函數(shù),括號(hào)內(nèi)為匿名函數(shù)的參數(shù)。
作用
可以用它創(chuàng)建命名空間,只要把自己所有的代碼都寫(xiě)在這個(gè)特殊的函數(shù)包裝內(nèi),那么外部就不能訪問(wèn),除非你允許(變量前加上window,這樣該函數(shù)或變量就成為全局)。各JavaScript庫(kù)的代碼也基本是這種組織形式。
其他寫(xiě)法
(function () { /* code */ } ());!function () { /* code */ } ();~function () { /* code */ } ();-function () { /* code */ } ();+function () { /* code */ } ();