Я попытался сделать несколько многомерных массивов в Javascript:Как получилось, что положение «arr [i] = []» приводит к сбою кода?
var arr = [];
for (i = 0; i < 5; i++){
for (j = 0; j < 5; j++){
arr[i] = [];
arr[i][j] = i*j
}
}
Но при проверке результата с:
for(i = 0; i < 5; i++){
for(j = 0; j < 5; j++){
console.log(arr[i][j])
}
}
я наткнулся на кучу «неопределенными» ... Но, просто переключая arr[i] = []
откуда это между «за» заявления:
var arr = [];
for (i = 0; i < 5; i++){
arr[i] = [];
for (j = 0; j < 5; j++){
arr[i][j] = i*j
}
}
он работал отлично. ЗАЧЕМ????
Пройдите код для 'i = 0' и' j = 0..1'. – Blender
B/c вы переносите пустой массив на [i] для каждого j, поэтому единственным индексом, на самом деле имеющим sth, является j = 4. – Mahdi