常見(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)连茧,那么外部就不能訪(fǎng)問(wèn),除非你允許(變量前加上window巍糯,這樣該函數(shù)或變量就成為全局)啸驯。各JavaScript庫(kù)的代碼也基本是這種組織形式。
其他寫(xiě)法
(function () { /* code */ } ());
!function () { /* code */ } ();
~function () { /* code */ } ();
-function () { /* code */ } ();
+function () { /* code */ } ();