Objekte erben keine prototypisierten Funktionen
Ich habe eine Konstruktorfunktion, die als Superklasse fungiert:
Bla = function(a){this.a = a;}
Ich habe einen Prototyp erstellt, um eine einfache Methode einzuschließen:
Bla.prototype.f = function(){console.log("f");
Und jetzt neuBla(1).f();
wird "f" in der Konsole protokollieren. Angenommen, ich benötige eine Unterklasse, die von Bla erbt:
Bla2 = function(a)
{
this.base = Bla;
this.base();
}
x = new Bla2(5);
Nun, wie erwartet,x.a
gibt mir5
. Aber,x.f
istundefined
! Sieht aus als obBla2
hat es nicht von der geerbtBla
Klasse! Warum passiert das und wie korrigiere ich es?