Java

JavaScript闭包如何实现私有变量

小樊
81
2024-10-25 04:12:51
栏目: 编程语言

在 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 函数内部,无法从外部直接访问。我们通过返回一个包含 incrementgetCount 方法的对象,让外部可以通过这些方法间接地访问和修改 count 变量。这样,count 变量就成为了私有变量。

0
看了该问题的人还看了