この問題に関する詳細情報を見つけるのに問題があります。Foo()へのポインタを渡さずにFoo()内でBar()をインスタンス化したいと思います。または、Bar()がFoo()の子であることを知るための何らかの方法。これは可能ですか?それとも私はすでに十分な方法を使用していますか?
基本的に、私は次のような呼び出しを避けようとしています。
var bar1 = new Bar(this,someValue);
以下に、現在使用している方法の大まかな例を示します。
function Bar(p,val) {
var par = p,
value = val;
this.__defineGetter__("value", function() {
return par.dun.value + value;
});
}
function Dun(val) {
var value = val;
this.__defineGetter__("value", function() {
return value;
});
}
function Foo() {
var dun = new Dun(15);
var bar1 = new Bar(this, 10);
var bar2 = new Bar(this, 20);
this.__defineGetter__("dun", function() {
return dun;
});
this.__defineGetter__("bar1", function() {
return bar1;
});
this.__defineGetter__("bar2", function() {
return bar2;
});
}
var myFoo = new Foo();
myFoo.bar1.value;
ありがとう。