Hi,
ich möchte mehreren Objekten, die alle verschieden sind, die gleiche Grundfunktionalität zuweisen.
Dazu habe ich einen Basiskonstruktor geschrieben, der die Grundfunktionalität beinhaltet:
function Base()
{
this.set = function()
{
// tu was
};
this.reset = function()
{
// tu auch was
};
}
Meine Objekte würde ich sehr gerne über ein Literal erzeugen, da jedes meiner Objekte nur einmal existiert und alle unterschiedlich sind! Ich brauche also keinen Konstruktor dafür.
var obj1 = {a:1};
var obj2 = {b:2};
Wie bekomme ich an diese Objekte nun die Methoden der Base Klasse dran (set und reset) ??
Ich weiß dass ich es auf dem umständlichen Wege über einen Konstruktor und prototype vererben kann:
function Obj1Konstruktor()
{
this.a = 1;
}
Obj1Konstruktor.prototype = new Base();
var obj1 = new Obj1Konstruktor();
Aber genau das möchte ich umgehen, da ich nicht noch jedes mal einen Konstruktor schreiben will (und mir immer noch neue Konstruktornamen ausdenken möchte). Wie gesagt, ich brauche immer nur EINE Instanz. Ein Konstruktor würde immer nur einmal aufgerufen werden, weshalb ich eigentlich keinen benutzen möchte.
Habe schon verschiedenes probiert wie:
var obj1 = {prototype:new Base(), a:1};
aber ging bisher alles nicht.
Hat jemand eine Idee?
Gruß
Christian