JavaScript Array Beispiel 2: Mehrdimensionale / verschachtelte Arrays

Auch unter JavaScript ist es möglich mehrdimensionale Arrays zu definieren. Dazu wird unter jedem Element eines Arrays einfach ein weiteres Array gespeichert. Im folgenden Beispiel wird der Aufbau eines solchen – in diesem Fall zweidimensionalen – Arrays sowie der Zugriff auf die einzelnen Elemente des Arrays demonstriert.

Als erstes wird eine Variable mit dem Namen matrix definiert. Diese Variable wird mit einem leeren Array initialisiert. Danach wird in einer Schleife, die von 0 bis 9 läuft, jedem Element des Arrays ein weiteres leeres Array – die zweite Dimension – zugewiesen. Das Array der zweiten Dimension wird in der zweiten Schleifenstufe, Zeile für Zeile, direkt mit zehn Werten (widerum von 0 bis 9) gefüllt.

Jetzt enthält das Array matrix also zehn weitere Arrays, in denen die Werte gespeichert sind. Der Zugriff auf die einzelnen Werte erfolgt im nächsten for-Block, in den der Inhalt des Arrays ausgegeben wird. Die Abbruchbedingungen der Schleifen können nun über die Array-Eigenschaft length definiert werden. Wir erinnern uns, dass in der length-Eigenschaft eines Arrays die Anzahl der in ihm gespeicherten Elemente abgelegt ist.

Mit der Document-Methode write wird nun Zeile für Zeile jedes einzelne Element des Arrays ausgegeben. Als Index-Variablen werden i für die erste und j für die zweite Dimension genutzt – i dient also hier der Adressierung der Zeile und j der Adressierung der Spalte. Die Ausgabe des HTML-Tags für den Zeileumbruch (br) bewirkt, dass nach jeder Zeile ein Zeilenumbruch erfolgt.

<script language="javascript" type="text/javascript">
<!-- // JavaScript-Bereich für ältere Browser auskommentieren
// Leeres Array erzeugen
var matrix = new Array ();
// Füllen der Matrix
for (i = 0; i < 10; i++) {
  // Zweite Dimension im Array erzeugen
  matrix[i] = new Array ();
  // und mit Werten vorbelegen
  for (j = 0; j < 10; j++)
    matrix[i][j] = (j + i) % 9;
}
// Ausgabe der Matrix - Anzahl der Zeilen in length
for (i = 0; i < matrix.length; i++) {
  // Anzahl der Elemente in zweiter Dimension in length
  for (j = 0; j < matrix[i].length; j++)
    // Elemente mit nachfolgendem Leerzeichen ausgeben
    document.write (matrix[i][j] + ' ');
  // Zeilenweise einen Zeilenumbruch ausgeben
  document.write ('<br>');
}
// -->
</script>

Letzte Posts aus unserem Forum

Script Schrift vergrößern

Hallo wollte gerade das Script für die Schriftvergrößerung testen, aber irgendwie bekomme ich das nicht hin. Habe eine Joomla Website und dort die ... » mehr

von Gast am Donnerstag, 22. April 2010 13:32 in JavaScript - bisher 1 Antwort
Letzter Beitrag: Donnerstag, 22. April 2010 18:05 von alm

Hallo, damit kann man nicht allzu viel anfangen. Soviel ich weiss kann es zuweilen Probleme mit Tabellen-Layouts geben. Dort werden die ... » mehr

Javascript Schriftengröße: Problem bei URL-Übergabe im IE8

Hallo, ich hab eben das Javascript zur Schriftengröße eingebaut, klappt auch wunderbar auf Firefox, aber der IE 8 hat folgendes Problem: - wenn ich ... » mehr

von horst1234 am Dienstag, 23. Februar 2010 13:06 in JavaScript - bisher 1 Antwort
Letzter Beitrag: Dienstag, 23. Februar 2010 14:07 von horst1234

Ich hab das charset im Header geändert (wie in der beispiel.html), und schon klappt es ... » mehr

Dynamisches einfügen von Zeilen in eine Spalte

Hallo, ich möchte gerne eine Zeile zwischen zwei andere Zeilen einfügen. Leider klappt folgender Versuch noch nicht so richtig. Vielleicht kann mir ... » mehr

von Bluecaspar am Mittwoch, 10. Februar 2010 18:09 in JavaScript - bisher 2 Antworten
Letzter Beitrag: Donnerstag, 11. Februar 2010 10:37 von Bluecaspar

Ja genau, das war der Fehler. Vielen Dank Alex. Hier der korrigierte Code: <html> <head> <title> Test ... » mehr

Fenster in Frame erzeugen

Hallo, ich würde gerne ein Fenster in einer Webseite erzeugen. Das Fenster sollte dabei auf ein Frame begrenzt sein, sich also nicht aus diesen ... » mehr

von Bluecaspar am Dienstag, 9. Februar 2010 13:57 in JavaScript - bisher 2 Antworten
Letzter Beitrag: Mittwoch, 10. Februar 2010 09:32 von Bluecaspar

Ja hervorragend, dass ist genau das was ich möchte. Danke ... » mehr

Problem: Kombination mit Lightbox 2

Hallo, ich bin gerade dabei die Galerie mit der Lightbox 2 zu verknüpfen, da ich die Bilder im Vollformat gerne in diesem schicken aufpoppenden ... » mehr

von GoPeter am Montag, 16. November 2009 23:38 in JavaScript - bisher 16 Antworten
Letzter Beitrag: Mittwoch, 18. November 2009 00:32 von GoPeter

Soo...hat lange gedauert...aber jetzt ist es endlich ... » mehr



¬ Insolvenzrecht