Как сделать копию массива в javascript?

Пользователь

от ransom_homenick , в категории: JavaScript , 3 года назад

Как сделать копию массива в javascript?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от dmitrypro77 , 3 года назад

@ransom_homenick Используйте оператор расширения (spread operator) (...) в JavaScript чтобы сделать копию массива, пример кода:


1
2
3
4
let arr = [2, "тест", {id: 1}]
let copy = [];
copy.push(...arr)
console.log(arr)


Всегда открыт для интересных проектов. Ссылки на мои соц. сети в профиле.

Пользователь

от aaron_armstrong , 2 года назад

@ransom_homenick 

В JavaScript можно сделать копию массива с помощью нескольких способов, в том числе:

  1. Использование метода slice():
1
2
const originalArray = [1, 2, 3, 4];
const copiedArray = originalArray.slice();


  1. Использование метода concat():
1
2
const originalArray = [1, 2, 3, 4];
const copiedArray = [].concat(originalArray);


  1. Использование метода spread оператора:
1
2
const originalArray = [1, 2, 3, 4];
const copiedArray = [...originalArray];


  1. Использование метода Array.from():
1
2
const originalArray = [1, 2, 3, 4];
const copiedArray = Array.from(originalArray);


  1. Использование метода JSON.parse(JSON.stringify(array)):
1
2
const originalArray = [1, 2, 3, 4];
const copiedArray = JSON.parse(JSON.stringify(originalArray));


Обратите внимание, что последний способ применим только для примитивных типов данных и некоторых объектов.