javascript - 局部变量和私有(private)变量的关系

标签 javascript

我知道局部变量与函数的作用域有关,同时私有(private)变量与访问变量本身的方式有关....除此之外,我只是想确认一下局部变量和私有(private)变量,我我认为局部变量只能从特定位置访问,并且可以使用特定“方法”(例如使用 return )访问(例如访问值)

那么局部变量也可以被视为私有(private)变量吗?

最佳答案

“私有(private)变量”没有实际意义。

闭包中的局部变量是强制使用私有(private)成员的常见解决方案。

这是一个例子:

var counter = (function(){
  var count = 0;
  return {
    getCount: function(){
      return count;
    },
    increment: function(){
      count++;
    }
  }
})();

console.log(counter.getCount()); // 0
counter.increment();
console.log(counter.getCount()); // 1
console.log(counter.count);      // undefined, count is "private"

关于javascript - 局部变量和私有(private)变量的关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36941773/

相关文章:

javascript - jquery全日历客户端过滤

javascript - 表单与 post 方法到谷歌电子表格不再工作

javascript - AND 函数数组

javascript - 如何使用 Readable-range.js 插件中的 precisionDiff

javascript - 从 $.each 方法中调用 setTimeout/Interval?

javascript - 如何将视频分成几秒,然后在用户每次提交电子邮件地址时显示 1 秒

javascript - react-redux-v6 : withRef is removed. 要访问包装的实例,请在连接的组件上使用 ref

javascript - 为什么我的网页在 NodeJS POST 请求后刷新?

javascript - 固定的 div 重叠滚动条

javascript - 为什么我的数组中的所有日期元素都是相同的日期?