JavaScript基礎
解釋 Closure(閉包)的概念與實際應用場景
什麼是 Closure?
Closure 是指函式能記住並存取其詞法作用域(Lexical Scope)的能力,即使該函式在其原始作用域之外執行。
基本範例
function makeCounter() {
let count = 0
return function () {
count++
return count
}
}
const counter = makeCounter()
counter() // 1
counter() // 2
counter() // 3
內部函式「記住」了外部函式的 count 變數,即使 makeCounter 已執行完畢。
常見應用場景
- 資料私有化:模擬私有變數
- 函式工廠:根據參數建立特定行為的函式
- 防抖 / 節流:利用閉包保存計時器 ID
✦ AI 模擬面試
輸入你的答案,AI 即時分析精準度與改進空間
登入後即可使用 AI 評分
