526 Kapitel 12
Einen Konstruktor bauen
Einen Konstruktor erstellen
Die Verwendung von Konstruktoren geschieht in zwei Schritten: Zuerst definieren wir
den Konstruktor, und dann benutzen wir ihn, um Objekte zu erstellen. Kümmern wir uns
zunächst um die Definition des Konstruktors.
Wir brauchen einen Konstruktor zur Erstellung von Hunden, genauer gesagt Hunden, die
einen Namen (name), eine Rasse (breed) und ein Gewicht (weight) haben. Daher definieren
wir eine Konstruktorfunktion, die weiß, wie man Hunde erzeugt. Zum Beispiel so:
function Dog(name, breed, weight) {
this.name = name;
this.breed = breed;
this.weight = weight;
}
Eine Konstruktor-
funktion sieht aus wie
eine normale Funktion.
Die Parameter der Funktion
passen zu den Eigenschaften,
die wir für die einzelnen
Hunde benutzen wollen.
Die Namen der
Eigenschaften und
Parameter müssen nicht
gleich sein, sind es aber
oft — ebenfalls per
Konvention.
Allerdings beginnt der Name der Kons-
truktorfunktion hier mit einem Groß-
buchstaben. Das ist zwar nicht unbedingt
nötig, aber per Konvention tun es alle.
Wir brauchen Ihre Hilfe. Bisher haben wir für die Erstellung von Enten Objektliterale
verwendet. Können Sie anhand des Gelernten einen Konstruktor für die Erstellung von
Enten für uns schreiben? Unten sehen Sie eines unserer Objektliterale, das Sie als
Ausgangsbasis für Ihren Konstruktor benutzen können.
var duck = {
type: "rotköpfig",
canFly: true
}
Schreiben Sie einen
Konstruktor zur
Erstellung von Enten.
Dieser Teil fühlt sich schon mehr wie ein Objekt
an, da wir hier die einzelnen Parameter Dingen
zuweisen, die wie Eigenschaften aussehen.
Hmm, hier benutzen wir nicht, wie sonst in Funktionen üblich, lokale
Variablen. Stattdessen gibt es das Schlüsselwort this, das wir bisher
nur innerhalb von Objekten verwendet haben.
PS: Uns ist klar, dass Sie die Einzelheiten noch nicht kennen.
Daher konzentrieren wir uns zunächst auf die Syntax.
Hier ein Beispiel für ein
literales Enten-Objekt (duck).
Bleiben Sie dran. Sobald Sie sehen, wie der
Konstruktor benutzt wird, wird sich Ihnen
der Sinn des Ganzen offenbaren.
Beachten Sie, dass die
Konstruktorfunktion
keinen Rückgabewert
hat.
Spitzen Sie Ihren Bleistift

Get JavaScript-Programmierung von Kopf bis Fuß now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.