molily: JavaScript Konstruktor in Literal Notation

Beitrag lesen

Hallo,

Nun meine Frage, wie kann ich diesem Objekt einen Konstruktor geben?

Du hast da verschiedene Möglichkeiten:

Du notierst eine Konstruktorfunktion, in der du dem Instanzobjekt this alle möglichen Eigenschaften und Methoden anhängst. Diesem Konstruktor kannst du auch Parameter übergeben, um damit die Eigenschaften zu füllen.

function Konstruktor (param) {
   this.eigenschaft = param;
   this.methode = function () { ... };
   // usw.
}
var instanz = new Konstruktor("wert");
instanz.methode();
alert(instanz.eigenschaft);

oder du kannst den ganzen Kram über den Prototypen anhängen. Dann kannst du die Schreibweise mit dem Object-Literal beibehalten:

function Konstruktor (param) {
   this.eigenschaft = param; // wenn du die Eigenschaft an der Stelle setzen willst, ansonsten halt später durch einen Methodenaufruf
}

Konstruktor.prototype = {
   eigenschaft : "wert",
   methode : function () { ... }
}

var instanz = new Konstruktor("wert");
instanz.methode();
alert(instanz.eigenschaft);

Mathias