JavaScript - Objekte - Zugriff auf Objekte
1. Die Möglichkeiten
Leider Gottes gibt es in JavaScript immer zig Möglichkeiten, um etwas zu machen. Und das gilt natürlich auch für den Zugriff auf Objekte. Gottlob sind es hier nur zwei. Als da wären
- Zugriff auf einzigartige Elemente, die immer vorhanden sind. Oder zumindest sein sollten.
- Zugriff über einen Index.
2. Schreibweisen
Zunächst mal greift man immer erst auf das Hauptobjekt zu. Und da gibt es nur eine Schreibweise, nämlich der Name des Objektes.
Also zum Beispiel document
oder window
.
Die Pünktchennotation
Bei dieser Variante wird das folgende Unterobjekt, durch einen Punkt getrennt, angesteuert. Also nach dem Schema
hauptobjekt.unterobjekt
. Das kann man dann auf die Methoden und Eigenschaften sowie weitere mögliche Unterobjekte
anwenden.
hauptobjekt.unterobjekt.eigenschaft;
hauptobjekt.unterobjekt.unterunterobjekt.methode ();
Unter bestimmten Umständen kann man auch auf ein HTML-Element zugreifen, wenn es mit einem name
-Attribut versehen ist.
Dabei gibt es dann wiederum zwei Möglichkeiten:
hauptobjekt.objektname;
hauptobjekt.unterobjekt.objektname
Die Klammernotation
Wenn man ein Objekt aufruft, das über Unterobjekte verfügt, so muss man sich deren Speicherung als eine Art von Array vorstellen. Und dann kann man entweder über einen numerischen oder alphanumerischen Index darauf zugreifen.
Der numerische Index
Den kann man einsetzen, wenn in einem HTML-Dokument mehrere Elemente vorkommen können. Dann werden die von oben nach unten runter
in ein numerisches Array gepackt. Das funktioniert bei Formularen und einiger deren Elemente. Als da wären zum Beispiel
<option>
oder <optgroup>
. Darüber hinaus klappt das auch, wenn man mit getElementsByName
oder getElementsByTagName
arbeitet. Mein Tipp dazu. Lasst die Finger davon. Ist nicht sehr übersichtlich. Außer ihr
verarbeitet dynamisch mehrere Objekte. Dann ist es in Ordnung.
// Greift auf das erste Unterobjekt zu
hauptobjekt.unterobjekte[0];
Der alphanumerische Index
Der funktioniert analog zu oben beschriebener Möglichkeit mit Objektnamen. Auch hier hat man zwei Schreibweisen zur Verfügung:
hauptobjekt['objektname']
hauptobjekt.unterobjekt['objektname']
Zugriff über Variablen
Will man auf ein Unterobjekt mittels einer Variablen zugreifen, so muss man selbige immer in die eckigen Klammern packen, sonst produziert man eine Fehlermeldung. Also bitte merken, ist muy importante!
// Zugriff auf Unter-Unterobjekt irgendwas
var blubb = 'irgendwas';
hauptobjekt.unterobjekt[blubb]
// Funktioniert NICHT!!!
hauptobjekt.unterobjekt.blubb
3. Eine Empfehlung
Da Arrays in JavaScript auch Objekte sind (dazu gleich mehr), ist in JavaScript die Verarbeitung ein wenig komplizierter als in PHP. Darum rate ich euch, die Pünktkesschreibweise zu nehmen. Ist meiner Meinung nach einfacher zu handhaben. Die Arraynotation sollte man meiner Meinung nach nur dann verwenden, wenn man über Variablen auf Objekte zugreift. Weil's halt nicht anders geht. Das ist aber nur meine persönliche Meinung, an die ihr euch nicht halten müsst.
zurück zum vorherigen Abschnitt weiter zum nächsten Abschnitt