Kaip „JavaScript“ konvertuoti „Set“ į „Array“?
Norėdami konvertuoti a Nustatyti į an Masyvas , turime žinoti pagrindines rinkinio charakteristikas. A rinkinys yra unikalių daiktų rinkinys, t. y. nė vienas elementas negali pasikartoti. Nustatyti ES6 yra išdėstyti, ty elementai rinkinys gali būti kartojamas įterpimo tvarka. Konvertuoti rinkinį į masyvą „JavaScript“ yra nesudėtinga dėl unikalios rinkinių elementų prigimties ir tvarkingos struktūros.
konvertuoti rinkinį į masyvą „JavaScript“.
A rinkinys galima konvertuoti į masyvą JavaScript šiais būdais:
Turinys
- 1. Naudojant JavaScript Array.from() metodą
- 2. JavaScript Spread Operator naudojimas
- 3. Naudojant JavaScript forEach() metodą
- 4. Naudojant Lodash _.toArray() metodą
- 5. Atvaizdavimo funkcijos naudojimas
- „JavaScript“ Array.prototype.map metodo naudojimas su „Spread Operator“.
1. Naudojant JavaScript Array.from() metodą
JavaScript Array.from() metodas grąžina naują masyvą iš masyvo, objekto ar kitų kartojamų objektų, pvz., žemėlapio, rinkinio ir kt. Jis paima rinkinį kaip parametrą ir konvertuoja jį į masyvą.
Sintaksė:
const arrayName = Array.from(setName);
Pavyzdys: T jo pavyzdys paverčia rinkinį į masyvą, naudodamas Masyvas.iš() metodas
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); Išvestis
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 Spread Operator naudojimas
The „JavaScript“ sklaidos operatorius gali būti naudojamas sunaikinti masyvo elementus ir priskirti juos naujam kintamajam masyvo pavidalu.
Sintaksė:
const arrayName = [...setName];
Pavyzdys: Žemiau pateiktas kodas konvertuoja rinkinį į masyvą naudodamas sklaidos operatorius .
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); Išvestis
Elements in the set are: Set(2) { 'GFG', 'JS' } Elements in the Array created using Set are: [ 'GFG', 'JS' ] 3. Naudojant JavaScript forEach() metodą
The arr.forEach() metodas vieną kartą iškviečia pateiktą funkciją kiekvienam aibės elementui, kai jie perkeliami į masyvą naudojant push() metodą.
Sintaksė:
setName.forEach((ele)=>{ masyvasName.push(jam); }); Pavyzdys: Žemiau pateiktame kodo pavyzdyje naudojama kiekvienam () metodui konvertuoti aibę į masyvą.
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); Išvestis
Set Elements: Set(2) { 'Geeks', 'for' } Array Elements: Geeks,for 4. Naudojant Lodash _.toArray() metodą
„Lodash“ yra „JavaScript“ biblioteka, leidžianti mums naudoti _.toArray() metodas, kuris priima reikšmę ir konvertuoja ją į masyvą.
PASTABA: Norėdami naudoti šį metodą, turite įdiegti lodash biblioteką vietinėje sistemoje naudodami npm i lodash komandą.
Sintaksė:
const arrayName = _.toArray(setName);
Pavyzdys: Toliau pateiktas kodas įgyvendina lodash bibliotekos metodą _.toArray() ir konvertuoja rinkinį į masyvą.
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)); Išvestis:
Set Elements: Set(3) { 'welcome', 'to', 'GFG' } Array Elements: [ 'welcome', 'to', 'GFG' ] 5. Array.from() metodo naudojimas su atvaizdavimo funkcija
Kol Masyvas.iš() metodas dažniausiai naudojamas kartotiniams, pvz., rinkiniams, konvertuoti į masyvus, taip pat leidžia naudoti atvaizdavimo funkciją. Ši atvaizdavimo funkcija gali būti naudinga transformuojant kiekvieną rinkinio elementą konvertavimo proceso metu.
Sintaksė:
const arrayName = Array.from(setName, mapFunction);
Pavyzdys: Šiame pavyzdyje parodyta, kaip naudoti Array.from() su susiejimo funkcija, norint konvertuoti rinkinį į masyvą su modifikuotais elementais.
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('Dvigubas masyvas:', doubledArray);>>
Išvestis Doubled Array: [ 2, 4, 6, 8, 10 ]
„JavaScript“ Array.prototype.map metodo naudojimas su Spread Operator
Kitas būdas konvertuoti rinkinį į masyvą „JavaScript“ yra žemėlapio metodo derinimas su sklaidos operatoriumi. Šis metodas leidžia konvertuoti elementus konvertavimo proceso metu, panašiai kaip Array.from() su atvaizdavimo funkcija, bet naudojant kitą sintaksę.
Sintaksė :
// 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 + '_priesaga'); console.log('Sufiksuotas masyvas:', sufiksuotas masyvas);>> Išvestis