Java Reference
In-Depth Information
HInWEIS: Zur Erzeugung von Objekten gibt es in ECMAScript auch eine
Methode Objekt.create() , um ein Prototype-Objekt ohne die Deinition einer
Konstruktorfunktion auszuwählen. Wir gehen darauf aber nicht weiter ein, zumal
das in vielen Browsern nicht funktioniert.
7.2.2■Test auf die Existenz eines Objekts
In vielen Situationen müssen Sie vor bestimmten Anweisungen in Ihrem Skript testen, ob
ein Objekt überhaupt existiert. Denken Sie nur an die vielen unterschiedlichen Verhaltens-
weisen von unterschiedlichen Browsern. Aber auch bei der dynamischen Erzeugung eige-
ner Objekte kann so ein Test in vielen Konstellationen sinnvoll oder notwendig sein. Nun
zeigt sich an dieser Stelle ein Vorteil der losen Typisierung von JavaScript. Denn wenn Sie
auf ein nicht vorhandenes Objekt in JavaScript zugreifen wollen, wird ein fehlgeschlagener
Zugrif als false interpretiert (also wenn das Objekt nicht vorhanden ist). Wenn es exis-
tiert, liefert der Zugrif den Wert true . Folglich können Sie beispielsweise mit einer einfa-
chen if -Anweisung testen, ob ein Objekt existiert. Schema:
Listing 7.9■ Schema für den Test auf die Existenz von einem Objekt
if([Objekt]) {
...
}
7.3■Klassenmethoden und Klassen-
eigenschaten verwenden
Um Eigenschaten und Methoden von Objekten nutzen zu können, muss man wie gesagt
allgemein zuerst eine Objektinstanz auf dem beschriebenen Weg erzeugen. Danach kann
man über die Objektinstanz die verfügbaren Eigenschaten und Methoden verwenden. Dies
nennt man dann Instanzelemente.
Es gibt aber in der OOP auch das Konzept sogenannter Klassenelemente . Hierbei wird eine
Methode oder eine Eigenschat direkt von einer Klasse zur Verfügung gestellt. Dies bedeutet
mit anderen Worten, dass Sie solche Elemente nutzen können, ohne vorher mit einem Kon-
struktor oder literal eine konkrete Instanz erzeugt zu haben. Bei der Botschat stellen Sie
stattdessen die Klasse als Adressat voran. Solche Elemente werden bei JavaScript dann zur
Verfügung gestellt, wenn die konkrete Erzeugung einer Objektinstanz wenig Sinn macht
oder unnötig aufwendig wäre.
Im Fall der Klasse (bzw. in JavaScript genauer des Prototyps) Object gibt es etwa die Eigen-
schat prototype . Weitere Beispiele stehen vor allen Dingen über die Klasse Math zur Ver-
fügung. Diese stellt mathematische Konstanten und Methoden für mathematische Vorgänge
 
Search WWH ::




Custom Search