logo

Kako pretvoriti Set v Array v JavaScriptu?

Za pretvorbo a Set v an Array , moramo poznati glavne značilnosti množice. A set je zbirka edinstvenih elementov, kar pomeni, da se noben element ne more ponoviti. Set v ES6 so urejeni, tj. elementi set se lahko ponovi v vrstnem redu vstavljanja. Pretvorba nabora v matriko v JavaScriptu je enostavna zahvaljujoč edinstveni elementarni naravi in ​​urejeni strukturi nabora.

pretvori-set-v-matriko

pretvori Set v Array v JavaScript



A set lahko pretvorite v niz v JavaScript na naslednje načine:

Kazalo

1. Uporaba metode JavaScript Array.from().

Metoda JavaScript Array.from(). vrne novo matriko iz matrike, predmeta ali drugih predmetov, ki jih je mogoče ponoviti, kot so Map, Set itd. Nabor vzame kot parameter in ga pretvori v matriko.



Sintaksa:

const arrayName = Array.from(setName);>

Primer: T njegov primer pretvori Set v Array z uporabo Metoda Array.from().

algoritem kabine
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);>

Izhod
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. Uporaba JavaScript Spread Operator

The Operator širjenja JavaScript lahko uporabite za destrukturiranje elementov matrike in jih nato dodelite novi spremenljivki v obliki matrike.

Sintaksa:

const arrayName = [...setName];>

primer: Spodnja koda pretvori niz v matriko z uporabo operater širjenja .



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);>

Izhod
Elements in the set are: Set(2) { 'GFG', 'JS' } Elements in the Array created using Set are: [ 'GFG', 'JS' ]>

3. Uporaba metode JavaScript forEach().

The metoda arr.forEach(). pokliče ponujeno funkcijo enkrat za vsak element nabora, kjer so potisnjeni v matriko z uporabo metode push().

Sintaksa:

 setName.forEach((ele)=>{ arrayName.push(on); });>

primer: Spodnji primer kode uporablja metoda forEach(). da nabor pretvorite v niz.

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);>

Izhod
Set Elements: Set(2) { 'Geeks', 'for' } Array Elements: Geeks,for>

4. Uporaba metode Lodash _.toArray().

Lodash je knjižnica JavaScript, ki nam omogoča uporabo _.toArray() metoda, ki sprejme vrednost in jo pretvori v matriko.

kdo je izumil šolo

OPOMBA: Če želite uporabiti ta pristop, morate namestiti knjižnico lodash v vaš lokalni sistem z uporabo npm i lodash ukaz.

Sintaksa:

const arrayName = _.toArray(setName);>

primer: Spodnja koda implementira metodo _.toArray() knjižnice lodash za pretvorbo nabora v matriko.

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));>

Izhod:

css krepko
Set Elements: Set(3) { 'welcome', 'to', 'GFG' } Array Elements: [ 'welcome', 'to', 'GFG' ]>

5. Uporaba metode Array.from() s funkcijo preslikave

Medtem ko je Metoda Array.from(). se običajno uporablja za pretvorbo ponovljivih elementov, kot so nizi, v nize, omogoča pa tudi uporabo funkcije preslikave. Ta funkcija preslikave je lahko uporabna za preoblikovanje vsakega elementa nabora med postopkom pretvorbe.

Sintaksa:

const arrayName = Array.from(setName, mapFunction);>

primer: Ta primer prikazuje, kako uporabiti Array.from() s funkcijo preslikave za pretvorbo nabora v matriko s spremenjenimi elementi.

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('Podvojena matrika:', doubledArray);>

Izhod
Doubled Array: [ 2, 4, 6, 8, 10 ]>

Uporaba metode JavaScript Array.prototype.map z operatorjem Spread

Drug pristop za pretvorbo nabora v matriko v JavaScriptu je kombinacija metode zemljevida z operatorjem razpršitve. Ta metoda omogoča transformacijo elementov med postopkom pretvorbe, podobno kot Array.from() s funkcijo preslikave, vendar z uporabo drugačne sintakse.

Sintaksa :

const arrayName = [...setName].map(mapFunction);>

primer: V tem primeru bomo pretvorili nabor v matriko in uporabili transformacijo za vsak element z uporabo metode zemljevida.

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 + '_pripona'); console.log('Suffixed Array:', suffixedArray);>

Izhod
Suffixed Array: [ 'a_suffix', 'b_suffix', 'c_suffix', 'd_suffix' ]>