在 JavaScript 中,閉包可以用來創建私有變量。通過立即執行函數表達式(IIFE)結構,我們可以實現這一目標。下面是一個例子:
function createCounter() {
let count = 0; // 私有變量
// 返回一個對象,包含一個可以訪問和修改count的方法
return {
increment: function () {
count++;
},
getCount: function () {
return count;
},
};
}
const counter = createCounter();
counter.increment();
console.log(counter.getCount()); // 輸出 1
counter.increment();
console.log(counter.getCount()); // 輸出 2
在這個例子中,count
變量被封裝在 createCounter
函數內部,無法從外部直接訪問。我們通過返回一個包含 increment
和 getCount
方法的對象,讓外部可以通過這些方法間接地訪問和修改 count
變量。這樣,count
變量就成為了私有變量。