Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

Документы

Медиа

Назад
Вопрос про JavaScript: map, структуры данных

Map. В чем особенность? Какие свойства и методы есть? Как перебрать?

Этот вопрос проверяет знание структуры данных Map в JavaScript, ее свойств, методов и способов перебора элементов.

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

Map — это коллекция, которая хранит пары ключ-значение и позволяет использовать ключи любого типа, в отличие от обычных объектов. Она имеет методы для добавления, удаления и получения элементов, такие как set(), get(), delete() и has(). Перебирать элементы в Map можно с помощью методов forEach() или с помощью цикла for...of, что делает работу с этой структурой данных удобной и гибкой.

Длинный ответ

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

Ключи любого типа: В отличие от объектов, где ключи могут быть только строками или символами, Map позволяет использовать любые типы данных в качестве ключей, включая функции, объекты и даже другие карты.

const myMap = new Map(); 
myMap.set({}, 'value'); // Ключ — объект 
myMap.set('stringKey', 'value'); // Ключ — строка 
myMap.set(42, 'value'); // Ключ — число

Методы Map:

  • set(key, value): Добавляет или обновляет элемент с указанным ключом.

  • get(key): Возвращает значение по указанному ключу.

  • has(key): Проверяет, существует ли указанный ключ.

  • delete(key): Удаляет элемент по указанному ключу.

  • clear(): Удаляет все элементы из карты.

  • size: Свойство, возвращающее количество пар ключ-значение в Map.

Перебор элементов: Map предоставляет несколько способов перебора своих элементов:

  • Метод forEach():

myMap.forEach((value, key) => {
	console.log(`${key}: ${value}`); 
});
  • Цикл for...of:

for (const [key, value] of myMap) {
	console.log(`${key}: ${value}`); 
}
  • Методы keys(), values(), entries():

for (const key of myMap.keys()) {
	console.log(key); 
} 
for (const value of myMap.values()) {
	console.log(value); 
} 
for (const [key, value] of myMap.entries()) {
	console.log(`${key}: ${value}`); 
}

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

Уровень

  • Рейтинг:

    4

  • Сложность:

    7

Навыки

  • JavaScript

    JavaScript

Ключевые слова

#map

#структуры данных

Подпишись на React Developer в телеграм