@nickname13384

Как продублировать 4 раза объект в javascript?

Имеется вот такой объект
const arr = [
 {a: 1, b: 2, c: 3}
]


нужно получить такой

const arr = [
 {a: 1, b: 2, c: 3},
{a: 1, b: 2, c: 3},
{a: 1, b: 2, c: 3},
{a: 1, b: 2, c: 3},
{a: 1, b: 2, c: 3},
]

нужно больше 5 раз дублировать
  • Вопрос задан
  • 179 просмотров
Решения вопроса 3
@r_mustang
const arr = [{a: 1, b: 2, c: 3}];
const newArr = Array(4).fill(arr[0]);
Ответ написан
Stalker_RED
@Stalker_RED
Довольно просто: arr.push(arr[0], arr[0], arr[0])
Но стоит учитывать, что это не самостоятельные копии, и при изменении одного объекта, остальные тоже изменятся.
Если каждый объект болжен быть самостоятельным, то его придется клонировать, и это более сложная история.
Ответ написан
const arr = [
 {a: 1, b: 2, c: 3}
]
for (let i = 1; i < 4; i++) {
    arr.push({...arr[0]})
}
console.log(arr)

const arr = [
 {a: 1, b: 2, c: 3}
]
arr.push(...[{...arr[0]}, {...arr[0]},{...arr[0]}])
arr[1].d = 4
console.log(arr)

const arr = [
 {a: 1, b: 2, c: 3}
]
arr.push(...[arr[0], arr[0],arr[0]])
arr[1].d = 4
console.log(arr)

Рекомендую выполнить в консоли и посмотреть результат
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
17 нояб. 2024, в 18:45
1500 руб./за проект
17 нояб. 2024, в 18:39
100000 руб./за проект
17 нояб. 2024, в 18:29
15000 руб./за проект