Hoe Set naar Array in JavaScript te converteren?
Om een Set in een Array , moeten we de belangrijkste kenmerken van een set kennen. A set is een verzameling unieke items, dat wil zeggen dat geen enkel element kan worden herhaald. Set in ES6 zijn geordend, d.w.z. elementen van de set kan worden herhaald in de invoegvolgorde. Het converteren van een set naar een array in JavaScript is eenvoudig dankzij de unieke elementaard en geordende structuur van Sets.
converteer Set naar Array in JavaScript
A set kan worden geconverteerd naar een array in JavaScript op de volgende manieren:
Inhoudsopgave
- 1. JavaScript Array.from()-methode gebruiken
- 2. JavaScript-spreadoperator gebruiken
- 3. JavaScript gebruiken voorEach()-methode
- 4. Lodash _.toArray()-methode gebruiken
- 5. Gebruik van de mappingfunctie
- JavaScript gebruiken Array.prototype.map-methode met Spread-operator
1. JavaScript Array.from()-methode gebruiken
JavaScript Array.from()-methode retourneert een nieuwe array van een array, object of andere iterabele objecten zoals Map, Set, enz. Het neemt de set als parameter en converteert deze naar een array.
Syntaxis:
const arrayName = Array.from(setName);
Voorbeeld: T In zijn voorbeeld wordt een set omgezet in een array met behulp van de Array.from()-methode
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); Uitvoer
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. JavaScript-spreadoperator gebruiken
De JavaScript-spreadoperator kan worden gebruikt om de elementen van de array te destructureren en ze vervolgens toe te wijzen aan de nieuwe variabele in de vorm van een array.
Syntaxis:
const arrayName = [...setName];
Voorbeeld: De onderstaande code converteert een set naar een array met behulp van de verspreider .
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); Uitvoer
Elements in the set are: Set(2) { 'GFG', 'JS' } Elements in the Array created using Set are: [ 'GFG', 'JS' ] 3. JavaScript gebruiken voorEach()-methode
De arr.forEach() methode roept de opgegeven functie één keer aan voor elk element van de set waar ze naar een array worden gepusht met behulp van de push() -methode.
Syntaxis:
setName.forEach((ele)=>{ arrayName.push(hem); }); Voorbeeld: Het onderstaande codevoorbeeld gebruikt de forEach() methode om een set naar een array te converteren.
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); Uitvoer
Set Elements: Set(2) { 'Geeks', 'for' } Array Elements: Geeks,for 4. Lodash _.toArray()-methode gebruiken
Lodash is een JavaScript-bibliotheek waarmee we de _.toArray() methode die een waarde accepteert en deze naar een array converteert.
OPMERKING: Om deze aanpak te gebruiken, moet u de lodash-bibliotheek op uw lokale systeem installeren met behulp van de npm ik lodash commando.
Syntaxis:
const arrayName = _.toArray(setName);
Voorbeeld: De onderstaande code implementeert de _.toArray() -methode van de lodash-bibliotheek om een set naar een array te converteren.
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)); Uitgang:
Set Elements: Set(3) { 'welcome', 'to', 'GFG' } Array Elements: [ 'welcome', 'to', 'GFG' ] 5. De methode Array.from() gebruiken met een toewijzingsfunctie
Terwijl de Array.from()-methode wordt vaak gebruikt om iterables zoals sets naar arrays te converteren, het maakt ook het gebruik van een mapping-functie mogelijk. Deze toewijzingsfunctie kan nuttig zijn voor het transformeren van elk element van de set tijdens het conversieproces.
Syntaxis:
const arrayName = Array.from(setName, mapFunction);
Voorbeeld: Dit voorbeeld laat zien hoe u Array.from() kunt gebruiken met een toewijzingsfunctie om een set te converteren naar een array met gewijzigde elementen.
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); Uitvoer
Doubled Array: [ 2, 4, 6, 8, 10 ]
JavaScript gebruiken Array.prototype.map-methode met Spread-operator
Een andere benadering om een set naar een array in JavaScript te converteren, is door de kaartmethode te combineren met de spread-operator. Deze methode maakt de transformatie van elementen mogelijk tijdens het conversieproces, vergelijkbaar met Array.from() met een mappingfunctie, maar met een andere syntaxis.
Syntaxis :
const arrayName = [...setName].map(mapFunction);
Voorbeeld: In dit voorbeeld converteren we een set naar een array en passen we een transformatie toe op elk element met behulp van de kaartmethode.
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 + '_achtervoegsel'); console.log('Suffixed Array:', suffixedArray); Uitvoer
Suffixed Array: [ 'a_suffix', 'b_suffix', 'c_suffix', 'd_suffix' ]