有没有办法从模块模式中动态访问私有变量的公共函数?test1显示了我对"动态访问"的含义,但使用了公共变量
var x = (function(){
var x=0, y=2, z=5;
return {
toast: 123,
test1: function(arg){
return this[arg];
},
test2: function(){
// ??
}
};
}());
console.log(x.test1("toast")); // 123
console.log(x.test2("y")); // should return 2
Run Code Online (Sandbox Code Playgroud)
我最终创建了一个存储我的私有变量的私有变量(一个对象),所以我能够像这样访问它们
privateVarStore[privateVarName]
Run Code Online (Sandbox Code Playgroud)
但是有另一种解决方案吗?