Hvordan konvertere Set til Array i JavaScript?
For å konvertere en Sett inn i en Array , må vi kjenne hovedegenskapene til et sett. EN sett er en samling unike gjenstander, det vil si at ingen elementer kan gjentas. Sett i ES6 bestilles dvs. elementer av sett kan itereres i innsettingsrekkefølgen. Konvertering av et sett til et array i JavaScript er enkelt takket være Sets unike elementnatur og ordnede struktur.
konverter Set til Array i JavaScript
EN sett kan konverteres til en matrise i JavaScript på følgende måter:
Innholdsfortegnelse
- 1. Bruke JavaScript Array.from()-metoden
- 2. Bruke JavaScript Spread Operator
- 3. Bruke JavaScript forEach()-metoden
- 4. Bruke Lodash _.toArray()-metoden
- 5. Bruke kartfunksjonen
- Bruke JavaScript Array.prototype.map-metoden med Spread Operator
1. Bruke JavaScript Array.from()-metoden
JavaScript Array.from()-metoden returnerer en ny matrise fra en matrise, et objekt eller andre gjentakbare objekter som kart, sett osv. Den tar settet som parameter og konverterer det til en matrise.
Syntaks:
const arrayName = Array.from(setName);
Eksempel: T eksemplet hans konverterer et sett til en matrise ved å bruke Array.from()-metoden
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); Produksjon
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. Bruke JavaScript Spread Operator
De JavaScript Spread Operator kan brukes til å destrukturere elementene i matrisen og deretter tilordne dem til den nye variabelen i form av en matrise.
Syntaks:
const arrayName = [...setName];
Eksempel: Koden nedenfor konverterer et sett til en matrise ved hjelp av spredningsoperatør .
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); Produksjon
Elements in the set are: Set(2) { 'GFG', 'JS' } Elements in the Array created using Set are: [ 'GFG', 'JS' ] 3. Bruke JavaScript forEach()-metoden
De arr.forEach()-metoden kaller opp den angitte funksjonen én gang for hvert element i settet der de skyves til en matrise ved hjelp av push()-metoden.
Syntaks:
setName.forEach((ele)=>{ arrayName.push(ham); }); Eksempel: Kodeeksemplet nedenfor bruker forEach()-metoden å konvertere et sett til en matrise.
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); Produksjon
Set Elements: Set(2) { 'Geeks', 'for' } Array Elements: Geeks,for 4. Bruke Lodash _.toArray()-metoden
Lodash er et JavaScript-bibliotek som lar oss bruke _.toArray() metode som aksepterer en verdi og konverterer den til en matrise.
MERK: For å bruke denne tilnærmingen, må du installere lodash-biblioteket i ditt lokale system ved å bruke npm i lodash kommando.
Syntaks:
const arrayName = _.toArray(setName);
Eksempel: Koden nedenfor implementerer _.toArray()-metoden til lodash-biblioteket for å konvertere et sett til en matrise.
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)); Produksjon:
Set Elements: Set(3) { 'welcome', 'to', 'GFG' } Array Elements: [ 'welcome', 'to', 'GFG' ] 5. Bruke Array.from()-metoden med en tilordningsfunksjon
Mens Array.from()-metoden brukes ofte til å konvertere iterables som sett til arrays, den tillater også bruk av en kartfunksjon. Denne kartleggingsfunksjonen kan være nyttig for å transformere hvert element i settet under konverteringsprosessen.
Syntaks:
const arrayName = Array.from(setName, mapFunction);
Eksempel: Dette eksemplet viser hvordan du bruker Array.from() med en tilordningsfunksjon for å konvertere et sett til en matrise med modifiserte elementer.
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('Doubled Array:', doubledArray); Produksjon
Doubled Array: [ 2, 4, 6, 8, 10 ]
Bruke JavaScript Array.prototype.map-metoden med Spread Operator
En annen tilnærming for å konvertere et sett til en matrise i JavaScript er å kombinere kartmetoden med spredningsoperatoren. Denne metoden tillater transformasjon av elementer under konverteringsprosessen, lik Array.from() med en tilordningsfunksjon, men med en annen syntaks.
Syntaks :
const arrayName = [...setName].map(mapFunction);
Eksempel: I dette eksemplet vil vi konvertere et sett til en matrise og bruke en transformasjon på hvert element ved å bruke kartmetoden.
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 + '_suffiks'); console.log('Suffixed Array:', suffixedArray); Produksjon
Suffixed Array: [ 'a_suffix', 'b_suffix', 'c_suffix', 'd_suffix' ]