Come convertire Set in Array in JavaScript?
Per convertire a Impostato in un Vettore , dobbiamo conoscere le caratteristiche principali di un insieme. UN impostato è una raccolta di oggetti unici, ovvero nessun elemento può essere ripetuto. Impostato in ES6 sono ordinati cioè gli elementi del impostato può essere ripetuto nell'ordine di inserimento. Convertire un set in un array in JavaScript è semplice grazie alla natura unica degli elementi e alla struttura ordinata di Sets.
convertire Set in Array in JavaScript
UN impostato può essere convertito in un array in JavaScript nei seguenti modi:
Tabella dei contenuti
- 1. Utilizzo del metodo JavaScript Array.from()
- 2. Utilizzo dell'operatore di diffusione JavaScript
- 3. Utilizzo del metodo JavaScript forEach()
- 4. Utilizzo del metodo Lodash _.toArray()
- 5. Utilizzo della funzione di mappatura
- Utilizzo del metodo JavaScript Array.prototype.map con operatore Spread
1. Utilizzo del metodo JavaScript Array.from()
Metodo JavaScript Array.from() restituisce un nuovo array da un array, oggetto o altri oggetti iterabili come Map, Set, ecc. Prende il set come parametro e lo converte in un array.
Sintassi:
const arrayName = Array.from(setName);
Esempio: t questo esempio converte un Set in un Array utilizzando il metodo Metodo Array.from()
Javascript // Creating array from input string const mySet = new Set([1, 1, 2, 3, 4, 4, 5, 6, 5]); console.log('Elements in the set are: ', mySet); let myArr = Array.from(mySet); // Display output console.log('Elements in the Array created using Set are: ', myArr); Produzione
Elements in the set are: Set(6) { 1, 2, 3, 4, 5, 6 } Elements in the Array created using Set are: [ 1, 2, 3, 4, 5, 6 ] 2. Utilizzo dell'operatore di diffusione JavaScript
IL Operatore di diffusione JavaScript può essere utilizzato per destrutturare gli elementi dell'array e quindi assegnarli alla nuova variabile sotto forma di array.
Sintassi:
const arrayName = [...setName];
Esempio: Il codice seguente converte un set in un array utilizzando il metodo operatore di diffusione .
Javascript // Input set let mySet = new Set(['GFG', 'JS']); console.log('Elements in the set are: ', mySet); // Convert using spread operator let myArr = [...mySet]; // Display output console.log('Elements in the Array created using Set are: ', myArr); Produzione
Elements in the set are: Set(2) { 'GFG', 'JS' } Elements in the Array created using Set are: [ 'GFG', 'JS' ] 3. Utilizzo del metodo JavaScript forEach()
IL metodo arr.forEach() chiama la funzione fornita una volta per ciascun elemento del set in cui vengono inseriti in un array utilizzando il metodo push().
Sintassi:
setName.forEach((ele)=>{ nomearray.push(lui); }); Esempio: L'esempio di codice seguente utilizza il file metodo forEach() per convertire un set in un array.
Javascript // Create input set let newSet = new Set(); let arr = []; newSet.add('Geeks'); newSet.add('for'); // Duplicate item newSet.add('Geeks'); console.log('Set Elements: ', newSet); let someFunction = function (val1) { arr.push(val1); }; newSet.forEach(someFunction); // Display output console.log('Array Elements: ' + arr); Produzione
Set Elements: Set(2) { 'Geeks', 'for' } Array Elements: Geeks,for 4. Utilizzo del metodo Lodash _.toArray()
Lodash è una libreria JavaScript che ci consente di utilizzare il file _.toArray() metodo che accetta un valore e lo converte in un array.
NOTA: Per utilizzare questo approccio, è necessario installare la libreria lodash nel sistema locale utilizzando il file npm lo dash comando.
Sintassi:
const arrayName = _.toArray(setName);
Esempio: Il codice seguente implementa il metodo _.toArray() della libreria lodash per convertire un set in un array.
Javascript // Requiring the lodash library const _ = require('lodash'); let set = new Set(['welcome', 'to', 'GFG']); console.log('Set Elements: ', set); // Use of _.toArray() method console.log('Array Elements: ', _.toArray(set)); Produzione:
Set Elements: Set(3) { 'welcome', 'to', 'GFG' } Array Elements: [ 'welcome', 'to', 'GFG' ] 5. Utilizzo del metodo Array.from() con una funzione di mappatura
Mentre il Metodo Array.from() è comunemente usato per convertire elementi iterabili come set in array, consente anche l'utilizzo di una funzione di mappatura. Questa funzione di mappatura può essere utile per trasformare ogni elemento del set durante il processo di conversione.
Sintassi:
const arrayName = Array.from(setName, mapFunction);
Esempio: Questo esempio dimostra come utilizzare Array.from() con una funzione di mappatura per convertire un set in un array con elementi modificati.
JavaScript // Create a set with numerical values const numSet = new Set([1, 2, 3, 4, 5]); // Convert the set to an array, doubling each element const doubledArray = Array.from(numSet, x =>x*2); console.log('Array raddoppiato:', doubledArray); Produzione
Doubled Array: [ 2, 4, 6, 8, 10 ]
Utilizzo del metodo JavaScript Array.prototype.map con operatore Spread
Un altro approccio per convertire un Set in un Array in JavaScript è combinare il metodo map con l'operatore spread. Questo metodo consente la trasformazione di elementi durante il processo di conversione, simile a Array.from() con una funzione di mappatura, ma utilizzando una sintassi diversa.
Sintassi :
const arrayName = [...setName].map(mapFunction);
Esempio: In questo esempio, convertiremo un Set in un Array e applicheremo una trasformazione a ciascun elemento utilizzando il metodo map.
JavaScript // Create a set with string values const stringSet = new Set(['a', 'b', 'c', 'd']); // Convert the set to an array, appending a suffix to each element const suffixedArray = [...stringSet].map(x =>x + '_suffisso'); console.log('Array suffisso:', suffixedArray); Produzione
Suffixed Array: [ 'a_suffix', 'b_suffix', 'c_suffix', 'd_suffix' ]