kackb00n: "Vererbung"

Beitrag lesen

Kaum hab ich mein Problem beschrieben und bin eine rauchen gegangen ist mir eine Lösung eingefallen: Anstatt in C einfach nur this.set = function() {...} auszuführen speicher ich vorher this.set in einer lokalen Variable, also wie folgt:

function C() {
	B.call(this);
	
	var baseSet = this.set;
	this.set = function(val) {
		if(val > 10) throw new Error("error");
		
		baseSet.call(this, val);
	}
}
C.prototype = Object.create(B.prototype);

Diese Lösung funktioniert zwar, aber es wirkt irgendwie nicht richtig für mich.