Vyplňování vícerozměrných polí postupně v JavaScriptu
V předchozích příkladech byla všechna čísla v podpolích stejná. Nyní to uděláme tak, aby čísla rostla, takto:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
K tomu je třeba vytvořit speciální proměnnou-čítač,
která bude zvyšovat svou hodnotu o
1 při každé iteraci vnitřní
smčky. Hodnotu tohoto čítače zapíšeme
do pole, takto:
let arr = [];
let k = 1; // čítač
for (let i = 0; i < 3; i++) {
arr[i] = [];
for (let j = 0; j < 3; j++) {
arr[i].push(k); // zapisujeme čítač
k++; // zvyšujeme čítač
}
}
console.log(arr);
Kód lze zjednodušit provedením zvýšení čítače po přiřazení:
let arr = [];
for (let i = 0, k = 1; i < 3; i++) {
arr[i] = [];
for (let j = 0; j < 3; j++) {
arr[i].push(k++);
}
}
console.log(arr);
Všimněte si, že v tomto případě
musí být nutně k++, a ne
++k, protože druhá varianta nejprve
provede zvýšení čítače a teprve potom
zápis do pole (výsledkem tedy bude, že pole
začne dvojkou, a ne jedničkou, takto:
[[2, 3, 4], [5, 6, 7], [8, 9, 10]])
Pomocí dvou vnořených cyklů vytvořte následující pole:
[[1, 2], [3, 4], [5, 6], [7, 8]]
Pomocí dvou vnořených cyklů vytvořte následující pole:
[[2, 4, 6], [8, 10, 12], [14, 16, 18], [20, 22, 24]]
Pomocí tří vnořených cyklů vytvořte následující trojrozměrné pole:
[[[1, 2], [3, 4]], [[5, 6], [7, 8]]]
Autor následujícího kódu chtěl vytvořit takovéto pole:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
K tomu byl napsán následující kód:
let arr = [];
for (let i = 0; i < 3; i++) {
arr[i] = [];
for (let j = 0; j < 3; j++) {
arr[i][j] = k;
k++;
}
}
console.log(arr);
Napsaný kód však nedělá to, co bylo zamýšleno. Najděte a opravte autorovu chybu.
Autor následujícího kódu chtěl vytvořit takovéto pole:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
K tomu byl napsán následující kód:
let arr = [];
let k = 1;
for (let i = 0; i < 3; i++) {
arr[i] = [];
for (let j = 0; j < 3; j++) {
arr[i][j] = k;
}
}
console.log(arr);
Napsaný kód však nedělá to, co bylo zamýšleno. Najděte a opravte autorovu chybu.
Autor následujícího kódu chtěl vytvořit takovéto pole:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
K tomu byl napsán následující kód:
let arr = [];
let k = 1;
for (let i = 0; i < 3; i++) {
arr[i] = [];
for (let j = 0; j < 3; j++) {
arr[i][j] = k;
k--;
}
}
console.log(arr);
Napsaný kód však nedělá to, co bylo zamýšleno. Najděte a opravte autorovu chybu.
Autor následujícího kódu chtěl vytvořit takovéto pole:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
K tomu byl napsán následující kód:
let arr = [];
let k;
for (let i = 0; i < 3; i++) {
arr[i] = [];
for (let j = 0; j < 3; j++) {
arr[i][j] = k;
k++;
}
}
console.log(arr);
Napsaný kód však nedělá to, co bylo zamýšleno. Najděte a opravte autorovu chybu.
Autor následujícího kódu chtěl vytvořit takovéto pole:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
K tomu byl napsán následující kód:
let arr = [];
for (let i = 0, k = 1; i < 3; i++) {
arr[i] = [];
for (let j = 0; j < 3; j++) {
arr[i][j] = k;
}
}
console.log(arr);
Napsaný kód však nedělá to, co bylo zamýšleno. Najděte a opravte autorovu chybu.
Autor následujícího kódu chtěl vytvořit takovéto pole:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
K tomu byl napsán následující kód:
let arr = [];
for (let i = 0, k = 1; i < 3; i++) {
arr[i] = [];
for (let j = 0, k++; j < 3; j++) {
arr[i][j] = k;
}
}
console.log(arr);
Napsaný kód však nedělá to, co bylo zamýšleno. Najděte a opravte autorovu chybu.
Autor následujícího kódu chtěl vytvořit takovéto pole:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
K tomu byl napsán následující kód:
let arr = [];
for (let i = 0, k = 1; i < 3; i++) {
arr[i] = [];
for (let j = 0; j < 3; j++; k++) {
arr[i][j] = k;
}
}
console.log(arr);
Napsaný kód však nedělá to, co bylo zamýšleno. Najděte a opravte autorovu chybu.
Autor následujícího kódu chtěl vytvořit takovéto pole:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
K tomu byl napsán následující kód:
let arr = [];
for (let i = 0, k = 1; i < 3; i++) {
arr[i] = [];
for (let j = 0; j < 3; j++) {
arr[i][j] = ++k;
}
}
console.log(arr);
Napsaný kód však nedělá to, co bylo zamýšleno. Najděte a opravte autorovu chybu.
Autor následujícího kódu chtěl vytvořit takovéto pole:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
K tomu byl napsán následující kód:
let arr = [];
let k = 1;
for (let i = 0; i < 3; i++) {
arr[k] = [];
for (let j = 0; j < 3; j++) {
arr[i][j] = k;
k++;
}
}
console.log(arr);
Napsaný kód však nedělá to, co bylo zamýšleno. Najděte a opravte autorovu chybu.
Autor následujícího kódu chtěl vytvořit takovéto pole:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
K tomu byl napsán následující kód:
let arr = [];
for (let i = 0, k = 1; i < 3; i++) {
arr[i] = [];
for (let j = 0; j < 3; k++) {
arr[i][j] = k;
}
}
console.log(arr);
Napsaný kód však nedělá to, co bylo zamýšleno. Najděte a opravte autorovu chybu.