我知道局部变量与函数范围有关,而私有变量与访问变量本身的方式有关....除此之外,我只想确认局部变量和私有变量,我我认为局部变量只能从特定的地方访问,并且可以使用特定的“方法”访问(例如访问一个值)(例如使用return)
所以说局部变量也可以被视为私有变量吗?
答案 0 :(得分:2)
“私人变量”没有实际意义。
闭包中的局部变量是强制执行私有成员 的常用解决方案。
以下是一个例子:
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"