--- tags: JS 直播班 - 2022 秋季班 --- # 核心篇第五堂:函式 > 具有許多專有名詞的章節 ![](https://i.imgur.com/uhizfP7.png) ![](https://i.imgur.com/20T1C36.png) ![](https://i.imgur.com/fS7bbCO.png) ## 關於函式 - 函式基本 - 複習 ✅ - 函式可以執行 - 函式回傳 - 立即函式 - 函式專有名詞介紹 - 一級函式(特性) - 高階函式(由概念延伸出的技法) ### 一級函式 - 這是一個概念,並不局限於 JavaScript - 定義:當函式在該語言可以被視為與其它變數一樣時,就可以稱該語言具有一級函式 - 在 JavaScript 的案例 - 函式表達式 - 函式可以作為參數來傳遞 - 函式可以作為回傳值 ### 高階函式(技法) - 一樣是屬於一個概念,並不局限於 JavaScript - 條件: - 接受一個或多個函式作為輸入(函式是一個參數) - 輸出一個函式 - 這兩個概念與上述所介紹的一級函式所提到的案例幾乎一致,不過一級函式是「函式可作為變數使用」;而高階函式是**運用手法**,將函式作為參數傳入或輸出 ### 閉包 - 函式記憶體 - 函式的記憶體運作 - 閉包是什麼:在 MDN 的文件中提到「閉包(Closure)是函式以及該函式被宣告時所在的作用域環境(lexical environment)的組合 - 原文翻譯:閉包使可以從內部函式訪問外部函式的作用域(變數)。 - 哪裡可以看到閉包 - 閉包可以怎麼用 - 基本閉包概念 - 閉包與高階函式 ### 下週預告 > 因為進度的關係,本週先介紹一部分的 this - This 上半部 - 全域 this - use strict - call, bind, apply 5% - 物件內的方法 70% - 函式建構子 25%