Î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
- Când se clonează matricea?
- Folosind metoda Array.slice().
- Utilizarea operatorului de răspândire
- Folosind metoda Array.from().
- Folosind metoda Array.concat().
- Folosind o buclă for
- Folosind metoda Array.map().
- Folosind metoda Array.from() cu o funcție map
- Folosind metoda Array.of().
- Folosind metodele JSON.parse() și JSON.stringify().
- Folosind metoda Object.assign().
- Folosind metoda Array.reduce().
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 javaJavascript
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 caJavascript
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.