Verzeichnisfunktionen in JavaScript
- Beispieldokument für diese Lektion
userpage.fu-berlin.de/~ram/pub/xhtml_jf47ht81Ht/main
- Auswertung
this.document.querySelector( "#erste" ).querySelector( ".m" ).textContent
"Anton"
- Auswertung
this.document.querySelector( "#zweite" ).querySelector( ".m" ).textContent
"Cäsar"
Kaskaden
Wir sehen oben, daß das Ergebnis des Aufrufs einer Funktion (nämlich das Ergebnis des Aufrufs von »this.document.querySelector( "#erste" )«) wieder ein Verzeichnis sein kann, das eine weitere Funktion enthalten kann (hier »querySelector«), die man dann aufrufen kann. Wenn man solch einen Aufruf schreibt, dann ergibt sich eine Abfolge zweier Funktionsaufrufe, wie »querySelector( "#zweite" ).querySelector( ".m" )«, die wir auch als eine Kaskade von Aufrufen bezeichnen.
Verzeichnisfunktionen
Wenn man den Aufruf »querySelector( ".m" )« isoliert betrachtet, so stellt man fest, daß er einmal ein Element mit »Anton« und einmal ein Element mit »Cäsar« liefert. Wie kann es sein, daß derselbe Aufruf unterschiedliche Ergebnisse liefert? Die Erklärung dafür besteht darin, daß es sich bei den aufgerufenen Funktionen ja um zwei unterschiedliche Funktionen handelt, die erste Funktion »querySelector« befindet sich im Verzeichnis »this.document.querySelector( "#erste" )« und die zweite Funktion »querySelector« befindet sich im Verzeichnis »this.document.querySelector( "#zweite" )«. Es handelt sich also um zwei verschiedene Funktionen, obwohl ihr eigentlicher Name »querySelector« gleich ist.
Um das Verhalten einer Funktion richtig zu verstehen, muß man oft auch das Verzeichnis, in welchem jene Funktion enthalten ist, berücksichtigen.