logo

Як клонувати масив у JavaScript?

в JavaScript, клонування масиву означає створення нового масиву з тими самими елементами, що й вихідний масив. Клонування масиву в JavaScript корисно, коли ви хочете створити новий масив, який містить ті самі елементи, що й існуючий масив, не змінюючи вихідний масив.

Коли клонувати масив?

Якщо ви хочете виконати певні операції з масивом, наприклад сортування, фільтрацію або зіставлення, але не хочете змінювати вихідний масив, ви можете створити клон вихідного масиву та виконати операції над клоном.



  • Передаючи масив у функцію як аргумент, ви можете переконатися, що функція не змінює вихідний масив. У цьому випадку замість цього можна передати клон масиву.
  • Якщо ви хочете зберегти оригінальний масив для подальшого використання, ви можете створити клон вихідного масиву та використовувати клон для подальшої обробки чи маніпулювання.
  • Якщо у вас є масив, який містить об’єкти або масиви як елементи, і ви хочете уникнути модифікації вихідних об’єктів або масивів, ви можете створити клон масиву для роботи, щоб зміни в об’єктах або масивах у клоні не відбувалися. впливають на вихідні об'єкти або масиви.

Таким чином, клонування масиву в JavaScript це корисна техніка для роботи з масивами таким чином, щоб зберегти цілісність вихідного масиву та його елементів.

Ось кілька типових випадків використання клонування масиву:

Зміст



Використання методу Array.slice().

Ми використовуємо метод зрізу щоб створити поверхневу копію масиву. Цей метод створює новий масив із підмножиною елементів вихідного масиву.

приклад: Цей приклад демонструє реалізацію описаного вище підходу.

Javascript
const originalArray = [1, 2, 3]; const clonedArray = originalArray.slice(); console.log(clonedArray);>

Вихід
[ 1, 2, 3 ]>

Використання оператора поширення

Використовуючи оператор поширення це стислий і простий спосіб клонувати масив у JavaScript. Оператор поширення дозволяє розширювати масив на окремі елементи, які потім можна використовувати для створення нового масиву.



встановити java

приклад: Цей приклад демонструє реалізацію описаного вище підходу.

Javascript
const originalArray = [1, 2, 3]; const clonedArray = [...originalArray]; console.log(clonedArray);>

Вихід
[ 1, 2, 3 ]>

Використання методу Array.from().

Використовуючи Array.from() це інший спосіб клонування масиву в JavaScript. Цей метод створює новий масив із існуючого масиву, використовуючи додаткову функцію відображення для перетворення значень у новому масиві.

приклад: Цей приклад демонструє реалізацію описаного вище підходу.

Javascript
const originalArray = [1, 2, 3]; const clonedArray = Array.from(originalArray); console.log(clonedArray);>

Вихід
[ 1, 2, 3 ]>

Використання методу Array.concat().

Використовуючи Array.concat() це інший спосіб клонування масиву в JavaScript. Цей метод створює новий масив шляхом об’єднання двох чи більше масивів.

приклад: Цей приклад демонструє реалізацію описаного вище підходу.

Javascript
const originalArray = [1, 2, 3]; const clonedArray = [].concat(originalArray); console.log(clonedArray);>

Вихід
[ 1, 2, 3 ]>

Використання циклу for

Цей метод передбачає ітерацію кожного елемента вихідного масиву та копіювання кожного елемента в новий масив.

приклад: Цей приклад демонструє реалізацію описаного вище підходу.

Javascript
const originalArray = [1, 2, 3]; const clonedArray = []; for (let i = 0; i < originalArray.length; i++) {  clonedArray.push(originalArray[i]); } console.log(clonedArray);>

Вихід
[ 1, 2, 3 ]>

Використання методу Array.map().

Використовуючи Array.map() це інший спосіб клонування масиву в JavaScript. Цей метод створює новий масив шляхом зіставлення кожного елемента з вихідного масиву з новим значенням.

приклад: Цей приклад демонструє реалізацію описаного вище підходу.

Javascript
const originalArray = [1, 2, 3]; const clonedArray = originalArray.map(x =>x); console.log(clonedArray);>

Вихід
[ 1, 2, 3 ]>

Використання методу Array.from() із функцією map

Використовуючи Array.from() метод з функцією map — ще один спосіб клонувати масив у JavaScript. Цей метод створює новий масив шляхом зіставлення кожного елемента вихідного масиву з новим значенням за допомогою наданої функції.

приклад: Цей приклад демонструє реалізацію описаного вище підходу.

Javascript
const originalArray = [1, 2, 3]; const clonedArray = Array.from(originalArray, x =>x); console.log(clonedArray);>

Вихід
[ 1, 2, 3 ]>

Використання методу Array.of().

Цей метод створює новий масив з тими самими елементами, що й вихідний масив.

приклад: Цей приклад демонструє реалізацію описаного вище підходу.

Javascript
const originalArray = [1, 2, 3]; const clonedArray = Array.of(...originalArray); console.log(clonedArray);>

Вихід
[ 1, 2, 3 ]>

Використання методів JSON.parse() і JSON.stringify().

Використовуючи JSON.parse() і JSON.stringify() Методи — ще один спосіб клонувати масив у JavaScript. Цей метод передбачає перетворення вихідного масиву на рядок JSON і подальший аналіз рядка JSON для створення нового масиву.

приклад: Цей приклад демонструє реалізацію описаного вище підходу.

Javascript
const originalArray = [1, 2, 3]; const clonedArray = JSON.parse(JSON.stringify(originalArray)); console.log(clonedArray);>

Вихід
[ 1, 2, 3 ]>

Використання методу Object.assign().

Використовуючи Object.assign() метод це ще один спосіб клонувати масив у JavaScript. Цей метод створює новий масив шляхом копіювання властивостей вихідного масиву в новий об’єкт.

приклад: Цей приклад демонструє реалізацію описаного вище підходу.

np.унікальний
Javascript
const originalArray = [1, 2, 3]; const clonedArray = Object.assign([], originalArray); console.log(clonedArray);>

Вихід
[ 1, 2, 3 ]>

Використання методу Array.reduce().

The Метод Array.reduce(). виконує функцію редуктора для кожного елемента масиву, що призводить до єдиного вихідного значення. Ми можемо використовувати його для створення нового масиву з тими самими елементами, що й вихідний масив.

Синтаксис:

array.reduce((accumulator, currentValue, currentIndex, array) =>{ ... }, початкове значення);>

приклад : у цьому прикладі ми використаємо метод Array.reduce(), щоб створити клон масиву.

JavaScript
// Input array const originalArray = [1, 2, 3, 4]; // Cloning the array using reduce const clonedArray = originalArray.reduce((acc, val) =>{ acc.push(val);  повернути акс; }, []); // Відображення вихідного та клонованого масивів console.log('Original Array:', originalArray); // Вихід: [1, 2, 3, 4] console.log('Клонований масив:', clonedArray); // Вихід: [1, 2, 3, 4]>

Вихід
Original Array: [ 1, 2, 3, 4 ] Cloned Array: [ 1, 2, 3, 4 ]>

Примітка: Таким чином, при клонуванні масиву важливо враховувати складність даних і вимоги до продуктивності програми.