Sobes.tech
Junior

K čemu slouží datové struktury map a set?

sobes.tech AI

Odpověď od AI

Map a Set jsou kolekce pro ukládání dat.

  • Map: Ukládá páry klíč-hodnota. Klíče mohou být jakéhokoliv typu. Umožňuje rychlé hledání, přidávání a odstraňování prvků podle klíče. Zachovává pořadí vložení prvků.

    // Vytvoření Mapy
    const myMap = new Map();
    
    // Přidání prvků
    myMap.set('user1', { jméno: 'John', věk: 30 });
    myMap.set(1, 'číselný klíč');
    
    // Získání hodnoty podle klíče
    const userData = myMap.get('user1'); // { jméno: 'John', věk: 30 }
    
    // Kontrola, zda klíč existuje
    const hasKey = myMap.has(1); // true
    
    // Odstranění prvku podle klíče
    myMap.delete('user1');
    
    // Velikost Mapy
    const size = myMap.size; // 1
    
    // Iterace přes Mapu
    for (const [key, value] of myMap) {
      console.log(`${key}: ${value}`);
    }
    
  • Set: Ukládá unikátní hodnoty jakéhokoliv typu. Umožňuje rychle zkontrolovat, zda prvek existuje, a také přidávat a odstraňovat prvky. Zachovává pořadí vložení.

    // Vytvoření Setu
    const mySet = new Set();
    
    // Přidání prvků
    mySet.add(1);
    mySet.add('ahoj');
    mySet.add(1); // Duplicita, nebude přidáno
    
    // Kontrola, zda prvek existuje
    const hasValue = mySet.has('ahoj'); // true
    
    // Odstranění prvku
    mySet.delete(1);
    
    // Velikost Setu
    const size = mySet.size; // 1
    
    // Iterace přes Set
    for (const value of mySet) {
      console.log(value);
    }
    

Použití Map je vhodnější, když je potřeba ukládat data spojená s unikátními identifikátory (klíči) a provádět rychlé vyhledávání. Set se používá pro ukládání kolekce unikátních hodnot a kontrolu jejich existence.