198 Kapitel 5
Verhalten hinzufügen
Objekte mit Verhalten versehen
var fiat = {
make: "Fiat",
model: "500",
year: 1957,
color: "graublau",
passengers: 2,
convertible: false,
mileage: 88000,
drive: function() {
alert("wrumm wrumm!");
}
};
fiat.drive();
Sie haben nicht ernsthaft geglaubt, dass Objekte nur zum Speichern von Zahlen und Strings benutzt
werden, oder? Objekte sind aktiv. Objekte können Dinge tun. Hunde sitzen auch nicht einfach nur da … sie
bellen, rennen umher, spielen Fangen. Ein Hund-Objekt sollte das auch können! Genauso fahren wir Autos,
parken sie, legen den Rückwärtsgang ein und bremsen. Mit dem bisher in diesem Kapitel Gelernten haben
Sie bereits das nötige Handwerkszeug, um Ihre Objekte mit Verhalten zu versehen. Und das geht so:
Um die
drive-Funktion, Verzeihung, die drive-Methode, aufzurufen, benutzen Sie
ebenfalls die Punktnotation, hier mit dem Objektnamen fiat und dem Eigenschaftsnamen
drive. Der einzige Unterschied ist, dass wir dem Namen der Eigenschaft ein Paar runder
Klammern nachstellen (genau wie bei einem normalen Funktionsaufruf auch).
Wir wenden die Punktnotation an, um,
genau wie bei anderen Eigenschaften
auch, auf die Funktion in fiat
zuzugreifen. Wir sagen: »Die drive-
Methode wird auf dem fiat-Objekt
aufgerufen.«
Sie können Funktionen direkt in
ein Objekt einbauen, wie hier.
Ein bisschen Nomenklatur: Üblicherweise
werden in Objekten definierte Funktionen als
Methoden bezeichnet. Das ist der gebräuchliche
objektorientierte Begriff für eine Funktion
innerhalb eines Objekts.
Beachten Sie, dass wir in der Funktionsdefinition
keinen Namen angeben. Wir benutzen nur
das Schlüsselwort function, gefolgt vom
Funktionskörper. Stattdessen sprechen wir die
Funktion über den Namen der Eigenschaft an.
Hierfür weisen Sie einer Eigenschaft einfach eine
Funktionsdefinition zu. Richtig, Eigenschaften
können auch Funktionen enthalten.
Das Ergebnis des Aufrufs
von fiat.drive().
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.