Sobes.tech
Back to questions
Middle+
4

Что такое Map и Set, чем они отличаются, какие особенности есть?

Companies where asked
М.Видео/эльдорадо

Answer from AI

sobes.tech AI

Map и Set — это коллекции в JavaScript, предназначенные для хранения данных, но с разными целями:

  • Map — коллекция пар ключ-значение. Ключи могут быть любого типа (объекты, функции, примитивы). Map сохраняет порядок вставки элементов.

  • Set — коллекция уникальных значений. В Set не может быть дубликатов, и он также сохраняет порядок вставки.

Отличия и особенности:

  • Map хранит пары ключ-значение, Set — только значения.
  • В Map можно быстро получить значение по ключу, в Set — проверить наличие значения.
  • Map имеет методы set(key, value), get(key), has(key), delete(key), size.
  • Set имеет методы add(value), has(value), delete(value), size.

Пример:

const map = new Map();
map.set('a', 1);
map.set({}, 2);

const set = new Set();
set.add(1);
set.add(2);
set.add(1); // не добавится, т.к. дубликат

console.log(map.get('a')); // 1
console.log(set.has(2)); // true