Java Reference
In-Depth Information
kann jede gewöhnliche Funktion unmittelbar als Methode verwendet werden. Sie muss bloß
über eine Funktionsreferenz an ein Objekt oder einen Objekttyp gebunden werden, entwe-
der als benannte oder als anonyme Funktion.
HInWEIS: Beachten Sie schon jetzt das Problem in Hinsicht der objektorien-
tierten Philosophie, dass in JavaScript eine solche benannte Funktion, die als
Methode verwendet wird, außerhalb der Objektdeklaration steht und immer
auch ohne das vorangestellte Objekt als gewöhnliche Funktion aufgerufen wer-
den kann. Bei der Verwendung einer anonymen Funktion (Closure) als Methode
vermeiden Sie dieses Problem.
13.2■Ein einzelnes Objekt erweitern
Durch die interne tabellenartige Struktur eines Objekts und die lose Typisierung in
JavaScript kann man ein einzelnes Objekt einfach dadurch erweitern, dass man den Bezeich-
ner des Objekts notiert, dem ein Punkt und die neu gewünschte Eigenschat samt Wertzu-
weisung folgen. Es entsteht dann ein neuer Eintrag in der Tabelle, die die Struktur des
Objekts abbildet. Sie erinnern sich sicher, dass man in JavaScript Arrays ja auch einfach
erweitern kann, indem man einen neuen Schlüssel verwendet.
Das Schlüssel-Werte-Paar wird einfach in der Tabelle angehängt. Damit kann man natürlich
auch neue Methoden ergänzen, denn diese werden als Funktionsreferenz beim Objekt veran-
kert und die Funktionsreferenz wird einer neuen Objekteigenschat zugewiesen. Hier greit
wieder die lose Typisierung von JavaScript. Diese macht die Erweiterung zum Kinderspiel.
13.2.1■Ein Beispiel für die Objekterweiterung
Betrachten wir zuerst die externe JavaScript-Datei kap13_1.js , in der ein einzelnes Objekt
erweitert wird:
Listing 13.1■ Ein einzelnes Objekt erweitern
var obj = new Object();
function getWS() {
return "<a href='http://rjs.de'>www.rjs.de</a>";
}
obj.irma = "RJS EDV-KnowHow";
obj.getWebseite = getWS;
obj.getBlog = function() {
return "<a href='http://blog.rjs.de'>blog.rjs.de</a>";
}
In der ersten Zeile erzeugen wir ein primitives Objekt vom Typ Object und speichern die
Referenz darauf in der Variablen obj . In der Folge wird die Eigenschat irma dem Objekt
 
Search WWH ::




Custom Search