Hallo,
Wenn du den prototypen von instance deklarierst, ist class1 noch kein prototype von class0(), das passiert erst danach.
Das beantwortet doch die Kernfrage nicht: Wenn in instance.prototype eine Instanz von class1 gespeichert wird, so sollten Änderungen am class1-Prototypen auch auf diese Instanz wirken und also auf die Instanzen von instance.
Das funktioniert auch durchaus, nur dann nicht, wenn man das prototype-Objekt überschreibt.
Statt
class1.prototype = { class0 : "SUPER" }; (was äquivalent zu new class0() ist, Vererbung mal außen vor)
kann ich
class1.prototype.class0 = "SUPER";
notieren, und das wirkt sich dann auf alle instance-Instanzen aus. Warum?
So könnte ich einfach alle Member von new class0 mit einer for-in-Schleife nach class1.prototype kopieren und das Problem wäre gelöst. Nachträgliche Änderungen an class0.prototype werden dann natürlich nicht berücksichtigt. Mehrfach-Vererbung, bei der ich nachträglich alle möglichen Prototypen in der Hierarchie ändern kann, geht wohl einfach nicht.
Mathias