Aus dem Kurs: Grundlagen der Programmierung: Basiswissen

Hands on: Arrays in JavaScript

Aus dem Kurs: Grundlagen der Programmierung: Basiswissen

Hands on: Arrays in JavaScript

Arrays sind ja nichts anderes als Variablen, die ich durchnummerieren kann, wo ich drüber iterieren kann mit einer Schleife. Schauen wir uns mal an, wie in JavaScript solche Arrays umgesetzt werden. Ich bin hier in der Datei arrays.html. Die habe ich hier links im Browser auch geöffnet, bin auf der Konsole, habe die User Messages eingeschaltet und schaue mir jetzt nun hier die einzeln, in dem Falle die Monatsnamen an. So sieht der Code dazu aus. Ich habe hier eine ganz normale Variablenzuweisung, so wie ich das bei Zeichenketten, bei Datumseingaben und bei Zahlen auch mache, also let months. Das ist der Name meiner Variablen. Den kann ich frei vergeben. In meinem Fall mache ich das immer auf Englisch, also Variablennamen sind grundsätzlich mit Englisch bezeichnet und dann gefolgt von einem new Array(. Dieses new Array, das ist jetzt spezifisch für JavaScript. Das muss man sich einfach merken, d.h., ich habe hier ein new, Leerzeichen, ein großes A ist wichtig und dann in runden Klammern sowie bei einem Funktionsaufruf auch, da schreibe ich nun die einzelnen Werte meiner, in dem Fall meiner Monate rein, also Januar, Februar, März usw. Und das wiederum sind einzelne Zeichenketten. Und eine Zeichenkette muss ich entweder in einfachen Einführungszeichen oder in doppelten Einführungszeichen schreiben. Es kommt in dem Falle aufs Selbe raus, d.h., ich habe hier Januar, Februar. Und Sie sehen, während ich das hier ändere, habe ich hier vorne ein doppeltes Anführungszeichen, hinten ein einfaches. Da kommt der Computer nicht mitklar, d.h., wenn ich mit Doppelten anfange, bei einer Zeichenkette, muss ich auch mit Doppelten aufhören, und jetzt werden hier wiederum die einzelnen Werte angegeben. Die unterscheide ich durch Komma, und jetzt habe ein Array. Ich habe so eine besondere Variable, durch die ich drüber iterieren kann, d.h., um auf den Januar zuzugreifen, kann ich jetzt schreiben months und dann eckige Klammer 0, also schauen wir uns das Ganze einmal an mit console.log, sage ich hier den Monat months, das ist der Name meiner Variablen und dann in eckigen Klammern und jetzt schreibe ich den Index rein, also die 1. Und schauen wir mal, dann sehe ich hier oben genau ein Februar. Februar ist aber der zweite Monat. Nun das liegt daran, dass JavaScript wie so oft auch an sich der Computer bei 0 anfängt zu zählen, d.h., der erste Wert in meinem Array hat den Index 0, also die Nummerierung 0 und der Februar dann eben erst die 1. Und auf diese Weise kann ich auf diese einzelnen Werte zugreifen. Wenn ich jetzt hier mir den Dezember anzeigen lassen möchte dann muss ich hier eine 11 schreiben. Wenn ich diesen Off-by-one-Error umgehen möchte, wenn ich also dafür Sorge tragen möchte, dass Januar tatsächlich die Nummer 1 bekommt, dann kann ich hier auch ein leeres Element eintragen, und jetzt hat die Nummer 11 hier automatisch der November. Sorgt aber auch dafür, dass mein Array nun 13 Elemente hat, also 13 Monate. Wenn Sie ein dreizehntes Monatsgehalt bekommen, mag das ja vielleicht sogar ganz sinnvoll sein, aber im Normalfall muss man einfach dran denken, dass der Computer eben bei 0 anfängt zu zählen. Um jetzt alle diese zwölf Monate ausgeben zu lassen, kann ich jetzt eine Vorschleife nutzen. Innerhalb der runden Klammern definiere ich, wo soll denn mein Index anfangen zu zählen? Wie lange soll das Ganze funktionieren? Also so lange er kleiner als 11 ist, kleiner oder gleich 11, d.h., ich habe hier zwölf Elemente, aber ich fange bei 9 an zu zählen. Und um wie viele Schritt möchte ich bei jeder Iteration, bei jedem Durchlauf weitergehen? In dem Falle nur ein Schritt. Und dann lasse ich mir den Index hier angeben, i für Index und gefolgt vom Monatsnamen. Und wenn ich jetzt mir beispielsweise nur jeden dritten Monat anzeigen möchte, dann möchte ich halt einfach bei jeder Iteration nicht um einen Schritt weitergehen, sondern um drei Schritte. Und dann sehe ich hier jeweils den ersten Monat eines neuen Quartals - Januar, April, Juli und Oktober. Wichtig ist, wir haben verschiedene Klammern in der Programmierung, das ist in vielen Programmiersprachen gleich. Wir haben manchmal runde Klammern, wir haben manchmal geschweifte Klammern. Und wir haben in dem Falle, wenn ich auf einzelne Elemente eines Arrays zugreifen möchte, eckige Klammern. Wir können diese Klammern nicht untereinander tauschen. Wo welche Klammer verwendet wird, also Parenthesis auf Englisch für runde Klammern, Curly Brackets für geschweifte Klammern und Brackets hier für die eckigen Klammern, das ist fest vorgegeben, und da müssen Sie drauf achten. Probieren Sie einfach mal aus, hier diese eckigen Klammern durch runde Klammern zu ersetzen, und schauen Sie mal, was der Computer dann macht. Es wird nicht funktionieren, aber wie der Computer Ihnen das sagt, das können Sie erst mal selber ausprobieren.

Inhalt