În universul JavaScript ES6, a fost introdus un nou element fascinant: Seturile. Să explorăm împreună ce reprezintă acestea.
Ce sunt, de fapt, aceste Seturi?
Cum le putem utiliza în codul JavaScript?
Și ce funcționalități ne oferă pentru a simplifica anumite provocări?
În acest ghid detaliat, vom dezvălui răspunsurile la toate aceste întrebări.
Despre Seturi
După cum sugerează și numele, un Set este, în esență, o colecție de elemente distincte. Esențial, Seturile nu permit duplicarea valorilor.
În JavaScript, Seturile rețin elementele în ordinea în care au fost adăugate. Prin urmare, putem spune că acestea sunt ordonate. Pot stoca atât valori primitive, cât și obiecte.
Hai să aruncăm o privire asupra sintaxei Seturilor în JavaScript.
Vă recomandăm să aveți un IDE la îndemână pentru a exersa exemplele următoare.
const nume = new Set(["Ion", "Gigel", "Vasile", "Dan", "Gigel"]);
console.log(nume);
const cuvantAleator = new Set("Aaaaaaaa");
console.log(cuvantAleator);
const numere = new Set([7, 7, 7, 4, 2, 2, 4, 6]);
console.log(numere);
Proprietăți și Funcții
Seturile vin echipate cu o serie de proprietăți și funcții, concepute pentru a simplifica interacțiunea cu acestea și a rezolva o varietate de probleme. Aceste proprietăți și funcții sunt intuitive și ușor de utilizat. Vom analiza fiecare dintre ele în detaliu.
dimensiune
Proprietatea `dimensiune` ne oferă informații despre numărul de elemente prezente într-un Set.
const nume = new Set(["Ion", "Gigel", "Vasile", "Dan", "Gigel"]);
console.log(`Dimensiune: ${nume.size}`);
adăuga
Funcția `add` este utilă pentru a introduce un nou element într-un Set. Dacă elementul pe care dorim să-l adăugăm există deja în Set, acesta nu va fi adăugat încă o dată.
// set gol
const nume = new Set();
nume.add("Ion");
nume.add("Gigel");
nume.add("Vasile");
nume.add("Dan");
nume.add("Gigel");
console.log(nume);
conține
Funcția `has` primește un argument și verifică dacă acesta există în Set. Funcția returnează `true` dacă elementul se află în Set, și `false` în caz contrar.
const nume = new Set(["Ion", "Gigel", "Vasile", "Dan", "Gigel"]);
console.log(nume.has("Gigel"));
console.log(nume.has("Andrei"));
șterge
Funcția `delete`, după cum sugerează și numele, preia un argument și îl elimină din Set. Aceasta nu va genera erori chiar dacă argumentul dat nu este prezent în Set.
const nume = new Set(["Ion", "Gigel", "Vasile", "Dan", "Gigel"]);
nume.delete("Ion");
console.log(nume);
intrări
Funcția `entries` returnează un iterator care conține perechi cheie-valoare sub formă de array, în ordinea în care au fost introduse. În cazul Seturilor, atât cheia, cât și valoarea sunt identice.
const nume = new Set(["Ion", "Gigel", "Vasile", "Dan", "Gigel"]); const intrari = nume.entries(); console.log(intrari.next().value); console.log(intrari.next().value); console.log(intrari.next().value); console.log(intrari.next().value); console.log(intrari.next().value);
chei
Funcția `keys` returnează un iterator al elementelor din Set, păstrând ordinea de inserare.
const nume = new Set(["Ion", "Gigel", "Vasile", "Dan", "Gigel"]); const chei = nume.keys(); console.log(chei.next().value); console.log(chei.next().value); console.log(chei.next().value); console.log(chei.next().value); console.log(chei.next().value);
valori
Funcția `values` returnează un iterator al elementelor Setului, în ordinea în care au fost adăugate. Este similară cu funcția `keys`.
const nume = new Set(["Ion", "Gigel", "Vasile", "Dan", "Gigel"]); const valori = nume.values(); console.log(valori.next().value); console.log(valori.next().value); console.log(valori.next().value); console.log(valori.next().value); console.log(valori.next().value);
ștergeTot
Funcția `clear` elimină toate elementele dintr-un Set, lăsându-l gol.
const nume = new Set(["Ion", "Gigel", "Vasile", "Dan", "Gigel"]); nume.clear(); console.log(nume);
pentruFiecare
Funcția `forEach` ne permite să parcurgem Setul și să accesăm fiecare element în parte.
const nume = new Set(["Ion", "Gigel", "Vasile", "Dan", "Gigel"]);
nume.forEach((element) => {
console.log(element);
});
Aplicații practice
Să vedem un exemplu simplu de utilizare a Seturilor. Să presupunem că avem un array cu valori duplicate și dorim să le eliminăm. Pentru a rezolva această problemă, putem apela la funcționalitatea Seturilor.
Iată etapele pe care le vom urma:
- Declaram un array cu valori repetitive.
- Creăm un Set gol.
- Parcurgem array-ul.
- Adăugăm fiecare element la Set.
- Elementele duplicate vor fi ignorate automat.
- Creăm un array nou gol.
- Parcurgem Setul și adăugăm fiecare element în noul array.
- Afișăm noul array.
Vă încurajăm să încercați să implementați singuri soluția. Dacă întâmpinați dificultăți, consultați soluția de mai jos.
const arr = ["Ion", "Gigel", "Vasile", "Dan", "Gigel"];
const temp = new Set();
arr.forEach((element) => {
temp.add(element);
});
const newArr = [];
temp.forEach((element) => {
newArr.push(element);
});
console.log(newArr);
Concluzie
Acum, dețineți toate informațiile necesare pentru a utiliza Seturile în JavaScript. Puteți profita de avantajele oferite de acestea în viitoarele voastre proiecte. Vă recomandăm să experimentați cu toate aspectele acestora.
Spor la programare! 👨💻