Probleemid mitmemõõtmeliste massiivide täitmisel JavaScriptis
Vaatleme järgmist koodi:
let arr = [];
for (let i = 0; i < 3; i++) {
arr[i] = []; // pöörake tähelepanu sellele reale
for (let j = 0; j < 3; j++) {
arr[i].push(j + 1);
}
}
console.log(arr);
Selles koodis on oluline koht tühja alamassiivi loomisel.
Me ei saa seda rida ära jätta, kuna siis sisemises tsüklis
annab katse suruda andmeid arr[i]-sse
vea.
Järgmise koodi autor tahtis teha kahemõõtmelist massiivi:
let arr = [];
for (let i = 0; i < 3; i++) {
for (let j = 1; j <= 5; j++) {
arr[i].push(j);
}
}
console.log(arr);
Kirjutatud kood siiski ei tee seda, mida kavatseti. Leidke ja parandage autori viga.
Järgmise koodi autor tahtis teha kahemõõtmelist massiivi:
let arr = [];
for (let i = 0; i < 3; i++) {
arr[i] = '';
for (let j = 1; j <= 5; j++) {
arr[i].push(j);
}
}
console.log(arr);
Kirjutatud kood siiski ei tee seda, mida kavatseti. Leidke ja parandage autori viga.
Järgmise koodi autor tahtis teha kahemõõtmelist massiivi:
let arr = [];
for (let i = 0; i < 3; i++) {
arr[i];
for (let j = 1; j <= 5; j++) {
arr[i].push(j);
}
}
console.log(arr);
Kirjutatud kood siiski ei tee seda, mida kavatseti. Leidke ja parandage autori viga.
Järgmise koodi autor tahtis teha kahemõõtmelist massiivi:
let arr = [];
for (let i = 0; i < 3; i++) {
arr[j] = [];
for (let j = 1; j <= 5; j++) {
arr[i].push(j);
}
}
console.log(arr);
Kirjutatud kood siiski ei tee seda, mida kavatseti. Leidke ja parandage autori viga.
Järgmise koodi autor tahtis teha kahemõõtmelist massiivi:
let arr = [];
for (let i = 0; i < 3; i++) {
arr = [];
for (let j = 1; j <= 5; j++) {
arr[i].push(j);
}
}
console.log(arr);
Kirjutatud kood siiski ei tee seda, mida kavatseti. Leidke ja parandage autori viga.
Järgmise koodi autor tahtis teha kahemõõtmelist massiivi:
let arr = [];
for (let i = 0; i < 3; i++) {
arr[i] = [];
for (let j = 1; j <= 5; j++) {
arr.push(j);
}
}
console.log(arr);
Kirjutatud kood siiski ei tee seda, mida kavatseti. Leidke ja parandage autori viga.