---
tags: JS 直播班 - 2022 秋季班
---
# 核心篇第五堂:函式
> 具有許多專有名詞的章節



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