例1これは!=これはJavaScriptで(まあ、時には....)
var Reptile = function() {
var reptile = this;
this.showBla = function() {
alert(reptile.bla);
}
}
var turtle = new Reptile();
turtle.bla = 'whatever';
turtle.showBla();
例2
var Reptile = function() {
this.showBla = function() {
alert(this.bla);
}
}
var turtle = new Reptile();
turtle.bla = 'whatever';
turtle.showBla();
は、例1合法ですか?時には "this"をコンストラクタで直接定義するために物事をねじ切っているようです...?!?
はうまく見えます。あなたはコンストラクタで何も定義していないので、単に参照を格納します。全く問題なし。 – jAndy
自分で 'this'を定義することはできません。常に利用可能であり、上書きすることはできません。 – pimvdb
両方の例は防弾であるので、時にはねじを締めるコードを提供できますか? – Esailija