首先咱們從字面上就能夠理解 IIFE(Immediately-Invoked Function Expression) 被當即/立刻調用執行的函數表達式。
這就至關於建立了一個匿名函數,當函數被理解爲表達式後就會執行,當執行的時候會建立一個獨立的做用域,從而起到好比避免環境污染的做用,另外IIFE中定義的任何變量和函數,都會在執行結束時被銷燬,必定程度提高了性能。
常規寫法如 (function(){…} )() 只是爲了經過js引擎的語法檢查,若是function出如今一行開始會被解析成語句函數聲明,爲了讓js引擎將其理解爲一個表達式,能夠使用括號或者任何一元表達式,因此區分是否是IIFE很簡單 首先看開頭。函數