Nesne oluşturuken hata oluyor.
önem: 5
Aşağıda Animal
’ıdan miras alan bir Rabbit
sınıfı bulunmakta.
Aşağıda bunu yapmaya çalıştık fakat başarılı olamadık. Problemi bulabilir misiniz?
class Animal {
constructor(name) {
this.name = name;
}
}
class Rabbit extends Animal {
constructor(name) {
this.name = name;
this.created = Date.now();
}
}
let rabbit = new Rabbit("White Rabbit"); // Error: this is not defined
alert(rabbit.name);
Çünkü Rabbit sınıfındaki yapıcı super’i yani ebeveny sınıfını çağırmalıdır. Düzeltilmiş kodu aşağıda görebilirsiniz:
class Animal {
constructor(name) {
this.name = name;
}
}
class Rabbit extends Animal {
constructor(name) {
super(name);
this.created = Date.now();
}
}
let rabbit = new Rabbit("White Rabbit"); // ok now
alert(rabbit.name); // White Rabbit