logo

Cum se clonează o matrice în JavaScript?

În JavaScript, clonarea unui tablou înseamnă crearea unei noi matrice cu aceleași elemente ca și matricea originală. Clonarea unei matrice în JavaScript este utilă atunci când doriți să creați o matrice nouă care să aibă aceleași elemente ca și o matrice existentă, fără a modifica matricea originală.

Când se clonează matricea?

Dacă doriți să efectuați unele operații pe o matrice, cum ar fi sortarea, filtrarea sau maparea, dar nu doriți să modificați matricea originală, puteți crea o clonă a matricei originale și puteți efectua operațiunile pe clonă.



  • Când treceți o matrice unei funcții ca argument, poate doriți să vă asigurați că funcția nu modifică tabloul original. În acest caz, puteți trece o clonă a matricei.
  • Dacă doriți să păstrați matricea originală pentru referințe viitoare, puteți crea o clonă a matricei originale și puteți utiliza clona pentru procesare sau manipulare ulterioară.
  • Dacă aveți o matrice care conține obiecte sau matrice ca elemente și doriți să evitați modificarea obiectelor sau matricelor originale, puteți crea o clonă a matricei cu care să lucrați, astfel încât modificările aduse obiectelor sau matricelor din clonă nu afectează obiectele sau matricele originale.

Prin urmare, clonarea unei matrice în JavaScript este o tehnică utilă pentru lucrul cu matrice într-un mod care păstrează integritatea matricei originale și a elementelor sale.

Iată câteva cazuri de utilizare obișnuite pentru clonarea unei matrice:

Cuprins



încercați să prindeți blocul java

Folosind metoda Array.slice().

Noi folosim metoda feliei pentru a crea o copie superficială a unui tablou. Această metodă creează o nouă matrice cu un subset de elemente din tabloul original.

Exemplu: Acest exemplu arată implementarea abordării explicate mai sus.

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

Ieșire
[ 1, 2, 3 ]>

Utilizarea operatorului de răspândire

Folosind operator de răspândire este o modalitate concisă și ușoară de a clona o matrice în JavaScript. Operatorul de răspândire vă permite să extindeți o matrice în elemente individuale, care pot fi apoi folosite pentru a crea o nouă matrice.



Exemplu: Acest exemplu arată implementarea abordării explicate mai sus.

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

Ieșire
[ 1, 2, 3 ]>

Folosind metoda Array.from().

Folosind Array.from() metoda este o altă modalitate de a clona o matrice în JavaScript. Această metodă creează o nouă matrice dintr-o matrice existentă, folosind o funcție opțională de mapare pentru a transforma valorile din noua matrice.

Exemplu: Acest exemplu arată implementarea abordării explicate mai sus.

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

Ieșire
[ 1, 2, 3 ]>

Folosind metoda Array.concat().

Folosind Array.concat() metoda este o altă modalitate de a clona o matrice în JavaScript. Această metodă creează o nouă matrice prin concatenarea a două sau mai multe matrice împreună.

Exemplu: Acest exemplu arată implementarea abordării explicate mai sus.

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

Ieșire
[ 1, 2, 3 ]>

Folosind o buclă for

Această metodă implică iterarea fiecărui element din matricea originală și copierea fiecărui element într-o matrice nouă.

comparare șiruri în java

Exemplu: Acest exemplu arată implementarea abordării explicate mai sus.

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

Ieșire
[ 1, 2, 3 ]>

Folosind metoda Array.map().

Folosind Array.map() metoda este o altă modalitate de a clona o matrice în JavaScript. Această metodă creează o nouă matrice prin maparea fiecărui element din tabloul original la o nouă valoare.

Exemplu: Acest exemplu arată implementarea abordării explicate mai sus.

sql selectați ca
Javascript
const originalArray = [1, 2, 3]; const clonedArray = originalArray.map(x =>X); console.log(clonedArray);>>>  
Ieșire
[ 1, 2, 3 ]>

Folosind metoda Array.from() cu o funcție map

Folosind Array.from() metodă cu o funcție de hartă este o altă modalitate de a clona o matrice în JavaScript. Această metodă creează o nouă matrice prin maparea fiecărui element din matricea originală la o nouă valoare folosind o funcție furnizată.

Exemplu: Acest exemplu arată implementarea abordării explicate mai sus.

Javascript
const originalArray = [1, 2, 3]; const clonedArray = Array.from(originalArray, x =>X); console.log(clonedArray);>>>  
Ieșire Folosind metoda Array.of().

Această metodă creează o nouă matrice cu aceleași elemente ca și matricea originală.

Exemplu: Acest exemplu arată implementarea abordării explicate mai sus.

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

Ieșire Folosind metodele JSON.parse() și JSON.stringify().

Folosind JSON.parse() și JSON.stringify() Metodele este o altă modalitate de a clona o matrice în JavaScript. Această metodă implică conversia matricei originale într-un șir JSON și apoi analizarea șirului JSON pentru a crea o nouă matrice.

Exemplu: Acest exemplu arată implementarea abordării explicate mai sus.

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

Ieșire
[ 1, 2, 3 ]>

Folosind metoda Object.assign().

Folosind Object.assign() metodă este o altă modalitate de a clona o matrice în JavaScript. Această metodă creează o nouă matrice prin copierea proprietăților matricei originale într-un obiect nou.

Exemplu: Acest exemplu arată implementarea abordării explicate mai sus.

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

Ieșire
[ 1, 2, 3 ]>

Folosind metoda Array.reduce().

The Metoda Array.reduce(). execută o funcție de reducere pe fiecare element al matricei, rezultând o singură valoare de ieșire. Îl putem folosi pentru a construi o nouă matrice cu aceleași elemente ca și matricea originală.

Sintaxă:

array.reduce((accumulator, currentValue, currentIndex, array) =>{ ... }, initialValue);>

Exemplu : În acest exemplu, vom folosi metoda Array.reduce() pentru a crea o clonă a unei matrice.

JavaScript
// Input array const originalArray = [1, 2, 3, 4]; // Cloning the array using reduce const clonedArray = originalArray.reduce((acc, val) =>{ acc.push(val);  return acc; }, []); // Afișează tablourile originale și clonate console.log('Original Array:', originalArray); // Ieșire: [1, 2, 3, 4] console.log('Cloned Array:', clonedArray); // Ieșire: [1, 2, 3, 4]>

Ieșire
Original Array: [ 1, 2, 3, 4 ] Cloned Array: [ 1, 2, 3, 4 ]>

Notă: Astfel, atunci când se clonează o matrice, este important să se ia în considerare complexitatea datelor și cerințele de performanță ale aplicației.