わかりました、これは何日も私を混乱させてきました! 次のようなものがあるとしましょう:
var FooBar = function(args) {
this.annoy = typeof args == "boolean" ? args : false;
this.Foo();
}
FooBar.prototype.Foo = function() {
if (this.annoy)
window.alert("My name is Foo!")
else
window.console.log("My name is Foo!")
this.Bar()
}
FooBar.prototype.Bar = function() {
if (this.annoy)
window.alert("My name is Bar!")
else
window.console.log("My name is Bar!")
}
これはうまくいきます。しかし、 が のプロパティである別のオブジェクトのプロパティとして定義されている場合、Bar()
newに引数として渡すことなくアクセスする方法はありますか? 例えば:FooBar
prototype
annoy
Bar()
annoy
FooBar.prototype.evenDeeper = {
Bar: function() {
// I wish to access "annoy" here!
},
anotherOne: function() {
},
yetAnotherOne: 'value'
}
私は間違っているかもしれませんが、内部Foo()
の ,Bar()
は と呼ばれるthis.evenDeeper.Bar()
はずですよね? さらに、Bar()
再帰的にしたい場合はどうしますか? 自分自身を自分自身の内部Bar()
と呼ぶだけですか、またはまたはまたは何と呼びますか?Bar()
Foobar.evenDeeper.Bar()
this.Bar()
概要
- 内部にある場合、どのように
Bar()
アクセスできますか?annoy
evenDeeper
Bar()
自分自身の中で自分自身をどのように参照しますか?
免責事項:私は、sで誰かを困らせるつもりはありませんalert()
!;)