立即呼叫函式表達式(IIFE)


比較

一般的 JavaScript 函式宣告方法如下:

let language = “JavaScript”;

function learnProgram(){
    console.log(`I am learning ${language}.`);
    }

learnProgram();      //I am learning JavaScript.

但若這個函數只要用到一次,又希望可以在宣告完成後立刻執行,就可以改用「立即呼叫函式表達式」(Immediately Invoked Function Expression, IIFE)如下:

(function (language){    //把函式用括弧括起來,填入參數,且可用匿名函式
    console.log(`I am learning ${language}.`);
    })(“JavaScript”);    //把執行的參數名稱填入第二個括弧中
//I am learning JavaScript.

功能

  • 函式宣告完立即執行,不須呼叫。
  • 函式只用一次,可用匿名函式,不必另外想函式名稱。
  • 不影響全域執行環境,若全域執行環境有相同名稱的參數也可以。

參考資料

  1. 立即函式 IIFE
  2. JavaScript 核心觀念(36)-函式以及 This 的運作-立即函式
#javascript #立即呼叫函式表達式 #IIFE







你可能感興趣的文章

關於 React 小書:state vs props

關於 React 小書:state vs props

Golang - 條件式與迴圈

Golang - 條件式與迴圈

【筆記】Sass 使用簡介與常用語法

【筆記】Sass 使用簡介與常用語法






留言討論