Sobes.tech
Junior

За какво се използват структурите данни map и set?

sobes.tech AI

Отговор от AI

Map и Set са колекции за съхраняване на данни.

  • Map: Съхранява двойки ключ-стойност. Ключовете могат да бъдат от всякакъв тип. Позволява бързо търсене, добавяне и изтриване на елементи по ключ. Запазва реда на въвеждане на елементите.

    // Създаване на Map
    const myMap = new Map();
    
    // Добавяне на елементи
    myMap.set('user1', { име: 'John', възраст: 30 });
    myMap.set(1, 'числов ключ');
    
    // Получаване на стойност по ключ
    const userData = myMap.get('user1'); // { име: 'John', възраст: 30 }
    
    // Проверка дали ключът съществува
    const hasKey = myMap.has(1); // true
    
    // Изтриване на елемент по ключ
    myMap.delete('user1');
    
    // Размер на Map
    const size = myMap.size; // 1
    
    // Итерация през Map
    for (const [key, value] of myMap) {
      console.log(`${key}: ${value}`);
    }
    
  • Set: Съхранява уникални стойности от всякакъв тип. Позволява бързо проверяване дали елемент съществува, както и добавяне и изтриване на елементи. Запазва реда на въвеждане.

    // Създаване на Set
    const mySet = new Set();
    
    // Добавяне на елементи
    mySet.add(1);
    mySet.add('здравей');
    mySet.add(1); // Дубликат, няма да бъде добавен
    
    // Проверка дали стойността съществува
    const hasValue = mySet.has('здравей'); // true
    
    // Изтриване на елемент
    mySet.delete(1);
    
    // Размер на Set
    const size = mySet.size; // 1
    
    // Итерация през Set
    for (const value of mySet) {
      console.log(value);
    }
    

Използването на Map е предпочитано, когато трябва да съхранявате данни, свързани с уникални идентификатори (ключове), и да извършвате бързи търсения. Set се използва за съхраняване на колекция от уникални стойности и проверка за тяхното наличие.