JS中(function(){xxx})(); 自執行匿名函數
- 2020 年 4 月 2 日
- 筆記
- 常見格式:(function() { /* code */ })();
- 解釋:包圍函數(function(){})的第一對括號向腳本返回未命名的函數,隨後一對空括號立即執行返回的未命名函數,括號內為匿名函數的參數。
- 作用:可以用它創建命名空間,只要把自己所有的代碼都寫在這個特殊的函數包裝內,那麼外部就不能訪問,除非你允許(變量前加上window,這樣該函數或變量就成為全局)。各JavaScript庫的代碼也基本是這種組織形式。
- 總結一下,執行函數的作用主要為 匿名 和 自動執行,代碼在被解釋時就已經在運行了。
其他寫法
(function () { /* code */ } ()); !function () { /* code */ } (); ~function () { /* code */ } (); -function () { /* code */ } (); +function () { /* code */ } ();
參考文檔:http://www.cnblogs.com/TomXu/archive/2011/12/31/2289423.html