Hallo,
wenn ich in JavaScript ein Mehrdimensionales Array ausgeben lasse, funktioniert es solange ich schreibe : marray[7][3]
wenn ich schreibe marray[i][j] dann macht er nichts mehr!
mfg
Hallo,
wenn ich in JavaScript ein Mehrdimensionales Array ausgeben lasse, funktioniert es solange ich schreibe : marray[7][3]
wenn ich schreibe marray[i][j] dann macht er nichts mehr!
mfg
noch etwas..
wenn ich marray[x] ausgebe, dann kommt ,,,,1
Da offensichtlich nicht nur meine Glaskugel kaputt ist, muss ich halt fragen:
kannst du uns nicht bitte etwas mehr Infos geben?
Den kompletten Code vielleicht?
<script type=text/javascript>
var dorf = new Array();
dorf[1] = new Array();
dorf[1][5] = 1;
function show()
{
for(i = 0; i < 5; i++)
{
for(j = 0; j < 5; j++)
{
document.getElementById("main"+i).innerHTML = marray[i][j];
}
}
}
</script>
wenn ich marray[i][j] auf marray[i] ändere zeigt er mir ,,,,,1 an.
Mit diesen Schleifen zählst du die Indexe ja numerisch hoch.
Das heißt beim ersten Durchlauf der ersten Schleife werden die Elemente array[0][0] bis array[0][4] abgearbeitet.
Beim zweiten Durchlauf der ersten Schleife sind es dann die Elemente array[1][0] bis array[1][4], dann array[2][0] bis array[2][4], usw....
Da du aber mit
nur dieses eine Element 'befüllst', sind alle anderen leer.
Außerdem wird bei deinen Schleifen-Bedigungen nie ein Element mit 5 als Index angesprochen, da dort steht:
Wenn i = 5 ist, trifft die Bedingung nicht mehr zu. <= (kleiner-gleich) hätte den gewünschten Effekt.
Ich frage mich aber auch warum dein Array einmal dorf und einmal marray heißt.
Die Funktion show() sollte das zu behandelnde Array dann schon als parameter entgegennehmen: