(2) 立即函式(IIFE) 是什麼
立即函式 (IIFE)
立即函式 (Immediately Invoked Function Expression)。
其實本身就是一個可立刻執行的函式,常被使用在只會執行一次的程式碼。
例如:初始化的動作,並且可將程式碼包起來,形成一個區域,避免與全域變數汙染。
使用立即函式的優點
- 全域變數減少:若重複宣告相同的全域變數則會被覆蓋,因為變數暴露在全域中很有可能會被其他地方的程式修改,因此可將變數放在立即函式裡面避免被異動。
- 全域變數區域化:把全域變數當做參數傳遞給立即函式,因為 JavaScript 在尋找變數時會優先查找區域變數,若找不到再去尋找上層或全域變數,所以在效率上可獲得微幅提升
- JavaScript 進行壓縮時,並不會對全域變數進行重新命名,區域變數則會重新命名,達到減少檔案大小。
在 function 內宣告區域變數
1 |
|
傳入全域變數到立即函式內
1 |
|
壓縮後變成
1 |
|
(2) 立即函式(IIFE) 是什麼
https://phoebeho.com/js-advanced/20220211/4212272277/