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

Map и Set — это встроенные структуры данных в JavaScript (и Node.js), предназначенные для хранения коллекций данных с особыми свойствами.

Короткий ответ

Что ответить на собеседовании

Map и Set — это встроенные структуры данных в JavaScript (и Node.js), предназначенные для хранения коллекций данных с особыми свойствами.

Подробный разбор

Ответ с пояснениями

Map и Set — это встроенные структуры данных в JavaScript (и Node.js), предназначенные для хранения коллекций данных с особыми свойствами.

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

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

Ключевые отличия:

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

Пример:

const map = new Map();
map.set('key1', 'value1');
map.set({}, 'value2');
console.log(map.get('key1')); // 'value1'

const set = new Set();
set.add(1);
set.add(2);
set.add(1); // не добавится, т.к. 1 уже есть
console.log(set.has(1)); // true

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее