Hvordan konverteres Set til Array i JavaScript?
At konvertere en Sæt ind i en Array , vi skal kende hovedegenskaberne for et sæt. EN sæt er en samling af unikke genstande, dvs. intet element kan gentages. Sæt i ES6 er bestilt dvs. elementer af sæt kan gentages i indsættelsesrækkefølgen. Konvertering af et sæt til et array i JavaScript er ligetil takket være Sets unikke elementnatur og ordnede struktur.
konverter Set til Array i JavaScript
EN sæt kan konverteres til et array i JavaScript på følgende måder:
Indholdsfortegnelse
- 1. Brug af JavaScript Array.from()-metoden
- 2. Brug af JavaScript Spread Operator
- 3. Brug af JavaScript forEach()-metoden
- 4. Brug af Lodash _.toArray()-metoden
- 5. Brug af kortlægningsfunktionen
- Brug af JavaScript Array.prototype.map-metoden med Spread Operator
1. Brug af JavaScript Array.from()-metoden
JavaScript Array.from() metode returnerer et nyt array fra et array, objekt eller andre iterable objekter som Map, Set osv. Det tager sættet som parameter og konverterer det til et array.
Syntaks:
const arrayName = Array.from(setName);
Eksempel: T hans eksempel konverterer et sæt til et array ved hjælp af Array.from() metode
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); Produktion
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. Brug af JavaScript Spread Operator
Det JavaScript Spread Operator kan bruges til at destrukturere elementerne i arrayet og derefter tildele dem til den nye variabel i form af et array.
Syntaks:
const arrayName = [...setName];
Eksempel: Nedenstående kode konverterer et sæt til et array ved hjælp af 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); Produktion
Elements in the set are: Set(2) { 'GFG', 'JS' } Elements in the Array created using Set are: [ 'GFG', 'JS' ] 3. Brug af JavaScript forEach()-metoden
Det arr.forEach() metode kalder den leverede funktion én gang for hvert element i sættet, hvor de skubbes til et array ved hjælp af push()-metoden.
Syntaks:
setName.forEach((ele)=>{ arrayName.push(ham); }); Eksempel: Nedenstående kodeeksempel bruger forEach() metode at konvertere et sæt til et 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); Produktion
Set Elements: Set(2) { 'Geeks', 'for' } Array Elements: Geeks,for 4. Brug af Lodash _.toArray()-metoden
Lodash er et JavaScript-bibliotek, der giver os mulighed for at bruge _.toArray() metode, som accepterer en værdi og konverterer den til en matrix.
BEMÆRK: For at bruge denne tilgang skal du installere lodash-biblioteket i dit lokale system ved hjælp af npm i lodash kommando.
Syntaks:
const arrayName = _.toArray(setName);
Eksempel: Nedenstående kode implementerer _.toArray()-metoden for lodash-biblioteket for at konvertere et sæt til et 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)); Produktion:
Set Elements: Set(3) { 'welcome', 'to', 'GFG' } Array Elements: [ 'welcome', 'to', 'GFG' ] 5. Brug af metoden Array.from() med en kortlægningsfunktion
Mens Array.from() metode bruges almindeligvis til at konvertere iterables som sæt til arrays, det tillader også brugen af en kortlægningsfunktion. Denne kortlægningsfunktion kan være nyttig til at transformere hvert element i sættet under konverteringsprocessen.
Syntaks:
const arrayName = Array.from(setName, mapFunction);
Eksempel: Dette eksempel viser, hvordan man bruger Array.from() med en kortlægningsfunktion til at konvertere et sæt til et array med modificerede 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); Produktion
Doubled Array: [ 2, 4, 6, 8, 10 ]
Brug af JavaScript Array.prototype.map-metoden med Spread Operator
En anden tilgang til at konvertere et sæt til et array i JavaScript er ved at kombinere kortmetoden med spread-operatoren. Denne metode giver mulighed for transformation af elementer under konverteringsprocessen, svarende til Array.from() med en kortlægningsfunktion, men ved hjælp af en anden syntaks.
Syntaks :
const arrayName = [...setName].map(mapFunction);
Eksempel: I dette eksempel vil vi konvertere et sæt til et array og anvende en transformation til hvert element ved hjælp af kortmetoden.
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); Produktion
Suffixed Array: [ 'a_suffix', 'b_suffix', 'c_suffix', 'd_suffix' ]