我想要一个包含子对象S的主对象S,它具有某个方法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中。
这非常简单!我最初寻找的是使用“this”来实现它的一种方式,但是这为我节省了一行代码。 :) – Reason 2012-02-09 20:57:46