Перейти к содержимому

JavaScript Map и Set

Введение в JavaScript Map

Что такое JavaScript Map?

В JavaScript Map — это коллекция, хранящая пары ключ-значение. Она позволяет использовать различные типы данных в качестве ключей и сохраняет порядок элементов, что отличает её от обычных объектов, поддерживающих только строки и символы в качестве ключей.

Создание и работа с Map

Для создания Map используйте new Map(). Он поддерживает несколько методов для работы с данными:

  • map.set(key, value): Добавляет пару ключ-значение.
  • map.get(key): Возвращает значение, связанное с ключом.
  • map.has(key): Проверяет наличие ключа.
  • map.delete(key): Удаляет пару ключ-значение.
  • map.clear(): Очищает Map.
  • map.size: Возвращает количество пар ключ-значение.

Пример кода:


Output appears here after Run.

Итерация по Map

Map можно перебирать несколькими способами:

  • С помощью методов map.keys(), map.values() и map.entries().
  • С помощью циклов for...of.
  • С помощью метода map.forEach().

Пример кода:


Output appears here after Run.

Понимание JavaScript Set

Что такое JavaScript Set?

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

Работа с Set

Для работы с Set:

  • Создайте Set с помощью new Set(iterable).
  • Добавьте элемент с помощью set.add(value).
  • Проверьте наличие элемента с помощью set.has(value).
  • Удалите элемент с помощью set.delete(value).
  • Определите количество элементов с помощью set.size.
  • Очистите Set с помощью set.clear().

Пример кода:


Output appears here after Run.

Итерация по Set

Set можно перебирать с помощью:

  • циклов for...of.
  • метода set.forEach(), который предоставляет доступ к каждому значению в Set.

Пример кода:


Output appears here after Run.

INFO

Помимо Map и Set, в JavaScript также есть WeakMap и WeakSet, которые по-другому управляют памятью, позволяя элементам собираться сборщиком мусора. Узнайте больше об этих специализированных коллекциях на нашей странице JavaScript WeakMap и WeakSet.

Заключение

JavaScript Map и Set предлагают мощные структуры данных для управления уникальными коллекциями и парами ключ-значение. Понимание их функциональности и областей применения улучшает ваши навыки программирования на JavaScript, что приводит к более эффективной и качественной разработке кода.

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

Практика

Какие свойства характерны для JavaScript Map и Set?

Считаете ли это полезным?

Предпросмотр dual-run — сравните с маршрутами Symfony на продакшене.