Bu, üzerinde shower
çağrılan nesneye karşılık gelir. Özellikle, en sonunda bu Person
işlevi gerçekleştirmek ve yapıcı içinde this
olarak erişilebilir olacak yeni, boş bir nesne oluşturur
p = new Person(n);
yapıyor sona erecek. Bu nesneye daha sonra Person.prototype
için bir bağlantı verilecektir ve p
başarısız olan herhangi bir öznitelik referansları, orada bulunup bulunmadığını görmek için Person.prototype
'a bakacaktır.
üzerinde p.shower()
kullanarak çağrılırsa, this
p
'a döner. Konu, javascript'te örnek ve sınıf olmamasıdır. Person.prototype
bir nesnedir ve Person
tarafından oluşturulan tüm nesneler, bir başvuru paylaşır.
Çıkarma prototipler hep birlikte, sadece
person = {'shower': function() {
this.dirtFactor = 2; }
}
person.shower();
console.log(person.dirtFactor);
yapabilir ve
this
hala yöntemi denilen bunun üzerine nesnesini ifade ettiğini göreceksiniz.
+1, fakat açıklığa kavuşmak gerekirse, 'bu', çağrıldıktan sonra '.' öncesi olana işaret eder. Eğer '.' olmadan çağrılırsa, o zaman bu' '' '' '' '' '' '' '' '' '' 'varsayılanıdır. –
Duş işlevini 'function() {console.log (this) ile değiştirerek kanıtlanabilir; } '. – kim3er
@ Box9 'this', geçerli bağlamı ifade eder. 'bu', varsayılan olarak' window' nesnesine (tarayıcıda) başvurur. Eklenti/işlev eklediğinizde içerik değişir. – kim3er