【发布时间】:2012-03-02 08:55:49
【问题描述】:
我想要一个包含子对象 S 的主对象 M,它有一些方法 E,它有一个私有变量 P。我还希望方法 E 可以通过另一个变量 V 访问 M。对于私有变量,我这样做:
M.S = function () {
var P,
V; // how to set V to M?
return {
E: function () {
// stuff goes here
}
}
}();
我想出的一个解决方案是删除最后一行的 (),然后调用匿名 S 创建函数作为 M 的方法。这解决了问题,但我认为可能还有更多优雅的方式去做。
M.S = function () {
var P,
V = this;
return {
E: function () {
// stuff goes here
}
}
};
M.S = M.S()
我主要需要知道什么是好的做法,因为我是 Javascript 中的私有变量的新手。
【问题讨论】:
标签: javascript closures this private