Sada JavaScriptu je kolekce hodnot, které jsou jedinečné.

Sady mohou obsahovat hodnoty libovolného datového typu. Mohou to být jednoduchá primitiva, jako jsou celá čísla nebo řetězce atd., nebo složité typy, jako jsou pole nebo objektové literály. Hodnoty v sadě se mohou objevit pouze jednou.

V tomto článku se naučíte osm metod JavaScript Set, které byste dnes měli ovládat.

1. Jak vytvořit novou sadu v JavaScriptu

Nový objekt Set můžete vytvořit pomocí NovýSoubor() konstruktér. Objekt Set ukládá jedinečné hodnoty libovolného datového typu. Tento konstruktor přijímá iterovatelný objekt jako parametr.

const setObj = new Set([21, 34, 35, 56, 23]);
console.log (setObj);

Výstup:

Sada (5) { 21, 34, 35, 56, 23 }

Pokud v parametru nic neurčíte, vytvoří se nová prázdná sada.

const setObj = new Set();
console.log (setObj);

Výstup:

Sada (0) {}

Pokud se pokusíte vytvořit sadu s opakujícími se prvky, duplicitní prvky budou odstraněny a bude vrácena jedinečná sada.

const setObj = new Set([1, 2, 3, 1, 2, 3]);
console.log (setObj);
instagram viewer

Výstup:

Sada (3) { 1, 2, 3 }

Můžete také vytvořit sadu pomocí smíšených datových typů.

const setObj = new Set([1, 2, "Ahoj", [45, 67, 78]]);
console.log (setObj);

Výstup:

Sada (4) { 1, 2, 'Ahoj', [ 45, 67, 78 ] }

2. Jak připojit nové prvky k objektu sady

Nový prvek můžete připojit na konec objektu Set pomocí přidat() metoda. Tato metoda přijímá hodnotu prvku, který se má přidat do objektu Set jako parametr, a vrací nový objekt Set s přidanou hodnotou.

const setObj = new Set();
setObj.add("Vítejte");
setObj.add("to");
setObj.add("MUO");
console.log (setObj);

Výstup:

Sada (3) { 'Vítejte', 'to', 'MUO' }

Hodnotu můžete předat přímo jako parametr nebo můžete místo toho předat proměnnou jako jednu.

const setObj = new Set();
// Přidání hodnoty k objektu Set
setObj.add("Vítejte");
const var1 = "do";
const var2 = "MUO";
// Přidání proměnné k objektu Set
setObj.add (var1);
setObj.add (var2);
console.log (setObj);

Výstup:

Sada (3) { 'Vítejte', 'to', 'MUO' }

The přidat() metoda také podporuje řetězení.

const setObj = new Set();
// Řetězení
setObj.add (1).add (2).add (3);
console.log (setObj);

Výstup:

Sada (3) { 1, 2, 3 }

Pokud se pokusíte připojit duplicitní prvky, uloží se pouze první výskyt prvku.

const setObj = new Set();
setObj.add (1);
setObj.add (2);
setObj.add (3);
setObj.add("M");
setObj.add("U");
setObj.add("O");
setObj.add (1);
setObj.add (2);
setObj.add (3);
console.log (setObj);

Výstup:

Sada (6) { 1, 2, 3, 'M', 'U', 'O' }

3. Jak odstranit všechny prvky z objektu sady

Všechny prvky z objektu Set můžete odstranit pomocí Průhledná() metoda. Tato metoda odstraní všechny prvky a vrátí se nedefinováno.

const setObj = new Set([1, 2, 3, 4, 5]);
console.log("Velikost objektu Set: " + setObj.size);
console.log (setObj);
setObj.clear();
console.log("Velikost objektu Set po vymazání prvků: " + setObj.size);
console.log (setObj);

Výstup:

Velikost objektu Set: 5
Sada (5) { 1, 2, 3, 4, 5 }
Velikost objektu Set po vymazání prvků: 0
Sada (0) {}

Příbuzný: Metody řetězců JavaScript, které byste měli zvládnout ještě dnes

4. Jak odstranit konkrétní prvek z objektu sady

Můžete odstranit konkrétní prvek z objektu Set (pokud existuje) pomocí vymazat() metoda. Tato metoda přijímá hodnotu, která má být odstraněna ze sady. Pokud je hodnota nalezena, metoda vrátí skutečný. Jinak bude Nepravdivé.

const setObj = new Set([1, 2, 3, 4, 5]);
console.log("Počáteční sada:");
console.log (setObj);
setObj.delete (3);
console.log("Nastaveno po smazání 3");
console.log (setObj);

Výstup:

Počáteční sada:
Sada (5) { 1, 2, 3, 4, 5 }
Nastavit po smazání 3
Sada (4) { 1, 2, 4, 5 }

5. Jak zkontrolovat, zda prvek v sadě existuje

Můžete zkontrolovat, zda prvek existuje v objektu Set pomocí má() metoda. Tato metoda přijímá hodnotu jako parametr pro testování přítomnosti v objektu Set. Pokud je prvek nalezen, metoda vrátí skutečný; jinak bude Nepravdivé.

const setObj = new Set(["Vítejte", "to", "MUO"]);
console.log (setObj.has("MUO"));
console.log (setObj.has("MakeUseOf"));

Výstup:

skutečný
Nepravdivé

6. Co je metoda entries() v objektu sady JavaScript?

Podle úředníka Webové dokumenty MDN:

"The záznamy() metoda vrací nový objekt Iterator, který obsahuje pole [hodnota, hodnota] pro každý prvek v objektu Set v pořadí vložení. Pro objekty Set neexistuje klíč jako u objektů Map. Aby však rozhraní API zůstalo podobné objektu Map, má každá položka stejnou hodnotu pro svůj klíč a hodnotu zde, takže je vráceno pole [hodnota, hodnota]."

const setObj = new Set(["Vítejte", "to", "MUO"]);
for (nechte položku setObj.entries()) {
console.log (záznam);
}

Výstup:

[ 'Vítejte', 'Vítejte' ]
[ 'do', 'do' ]
[ 'MUO', 'MUO' ]
const setObj = new Set(["Vítejte", "to", "MUO"]);
for (let [klíč, hodnota] setObj.entries()) {
console.log (hodnota);
}

Výstup:

Vítejte
na
MUO

Klíče a hodnoty v sadě jsou identické.

const setObj = new Set(["Vítejte", "to", "MUO"]);
for (let [klíč, hodnota] setObj.entries()) {
console.log (hodnota klíče);
}

Výstup:

skutečný
skutečný
skutečný

Příbuzný: Jak používat smyčky v JavaScriptu

7. Co je metoda forEach() v objektu sady JavaScript?

The pro každého() metoda vyvolá funkci pro každý prvek objektu Set. Tato metoda se vrací nedefinováno.

const setObj = new Set([1, 2, 3, 4, 5]);
nechť součet = 0;
setObj.forEach (funkce (prvek) {
součet += prvek;
});
console.log (součet);

Výstup:

15

8. Co je metoda values() v objektu sady JavaScript?

The hodnoty() metoda vrací an Iterátor objekt, který obsahuje všechny hodnoty v sadě, a to v pořadí vložení.

const setObj = new Set([1, 2, 3, 4, 5]);
const iteratorObj = setObj.values();
for (let value of iteratorObj) {
console.log (hodnota);
}

Výstup:

1
2
3
4
5

Příbuzný: Úvod do iterátorů a generátorů v JavaScriptu

Poznámka: Objekt Set v JavaScriptu nemá žádné klíče. Ale aby byly sady kompatibilní s Mapami, klíče() metoda se používá jako alias pro hodnoty() metoda. The klíče() metoda se chová úplně stejně jako hodnoty() metoda.

Nyní víte, jak vytvářet sady v JavaScriptu

Tak, tady to máte. Po přečtení tohoto článku byste měli mít spoustu věcí, které vám pomohou zvládnout vytváření sad v JavaScriptu.

Vytváření sad je zásadní pro každého programátora, který chce zlepšit svou hru. Jakmile si toto osvojíte, můžete přejít k zdokonalování dalších dovedností – například vytváření polí.

PodíltweetE-mailem
15 metod JavaScript Array, které byste dnes měli zvládnout

Chcete porozumět polím JavaScript, ale nemůžete se s nimi vypořádat? Pokyny naleznete v našich příkladech pole JavaScript.

Přečtěte si další

Související témata
  • Programování
  • JavaScript
  • Programování
  • Kurzy kódování
O autorovi
Yuvraj Chandra (70 publikovaných článků)

Yuvraj je vysokoškolským studentem informatiky na univerzitě v Dillí v Indii. Je nadšený pro Full Stack Web Development. Když zrovna nepíše, zkoumá hloubku různých technologií.

Více od Yuvraj Chandra

Přihlaste se k odběru našeho newsletteru

Připojte se k našemu zpravodaji a získejte technické tipy, recenze, bezplatné e-knihy a exkluzivní nabídky!

Chcete-li se přihlásit k odběru, klikněte sem