mehrdimensionaler Array in for-Schleifen

dark_flash01

Grünschnabel
Hallo Leute,
ich will einen Array(6x4) von oben links, nach unten rechts zeilenweise durchnummerieren, bekomme aber vom Firefox immer "Fehler: map[x] has no properties".
Ich verstehs grad nicht mehr :( Bitte helft mir, das auszumerzen... sodass mein Array wie gewollt gefüllt wird.

Code:
counter=1;
var map = new Array(6);
for (var i = 0; i < map.length; ++i) {
  map[i] = new Array(4);
}

for(x=1;x<=6;x++) {
  for(y=1;y<=4;y++) {
    map[x][y] = counter;
    counter++;
  }
}

So sollte der Array eigentlich aussehen:forum.JPG
 
Array-Indizes beginnen bei 0

Wenn du also einen Array mit 6 Elementen erstellst, hat dieser die Elemente:
Array[0]
Array[1]
Array[2]
Array[3]
Array[4]
Array[5]

du versuchts in deiner Schleife jedoch auf Array[6] zuzugreifen...und das existiert nicht.
Beginne die Schleife bei 0 und gehe nur bis 5, dann sollte es hinhauen(Selbiges gilt auch für die 2. Dimension)
 
Hey, ganz großes Dankeschön für die überfixe Antwort :D Tolles Forum ;)
Ja damit ist mein Problem gelöst. :) Ich hatte gedacht, dass der zu der angegeben Zahl beim Array deklarieren einfach die Null mit dazuzählt... aber es war genau andersrumm...

Danke dir :)
Gute nacht,
flash

--
 

Neue Beiträge

Zurück