【发布时间】:2011-12-03 10:28:12
【问题描述】:
我有一个包含公共和私有变量的对象。公共变量被分配给私有变量(我认为),但是,每当我用函数修改私有变量时,公共变量都不会更新。
var foo = (function() {
//Private vars
var a = 1;
return {
//Public vars/methods
a: a,
changeVar: function () {
a = 2;
}
}
})();
alert(foo.a); //result: 1
foo.changeVar();
alert(foo.a); //result: 1, I want it to be 2 though
现在我知道,如果我将 changeVar 中的行更改为 this.a = 2; 它可以工作,但它不会更新私有变量。我想同时更新私有变量和公共变量。这可能吗?
【问题讨论】:
标签: javascript variables scope private public