Трехмерный массив. как сформировать еще один вложенный массив?

как сформировать еще один вложенный массив? Вывод должен быть таким :


[
    [
        [1, 2, 3, 4, 5],
        [1, 2, 3, 4, 5],
    ],
    [
        [1, 2, 3, 4, 5],
        [1, 2, 3, 4, 5],
    ],
    [
        [1, 2, 3, 4, 5],
        [1, 2, 3, 4, 5],
    ],
]

Код :

let arr = [];
for (let i =0; i < 3; i++){
arr[i] = [];
  for (let j = 0; j < 3; j++){
arr[i][j] = [];  
  for (let k = 0; k < 5; k++) {
    arr[j].push(k+1); 
   }
  }
} console.log(arr)

Ответы (2 шт):

Автор решения: vikttur_Stop_RU_war_in_UA

Создаем пустой массив. Во вложенном цикле создаем и наполняем новые массивы, которые пушим в первый:

const arr = [];

for (let i = 0; i < 3; i += 1) {
    const arrChild = [];

    for (let k = 0; k < 5; k += 1) arrChild.push(k + 1);
    
    arr.push(arrChild);
}
    

console.log(arr);

Оптимизируем:

const arr = [];
const arrChild = [];

for (let k = 0; k < 5; k += 1) arrChild.push(k + 1);
for (let i = 0; i < 3; i += 1) arr.push(arrChild);

console.log(arr);

Еще одна вложенность - похожим образом:

const arr = [];
const arrChild = [];
const arrDesc = [];

for (let i = 0; i < 5; i += 1) arrDesc.push(i + 1);
for (let i = 0; i < 2; i += 1) arrChild.push(arrDesc);
for (let i = 0; i < 3; i += 1) arr.push(arrChild);

console.log(arr);
→ Ссылка
Автор решения: BeastPanda
let arr = [];

for (let i = 0; i < 3; i++) {
arr[i] = [];

    for (let j = 0; j < 3; j++) {
    arr[i][j] = [];

        for (let l = 0; l < 3; l++) {
        arr[i][j].push(l + 1)
        }
    }
}
console.log(arr);
→ Ссылка