Встречается на собеседованиях • сегодня

В чем разница между Map и объектом в JavaScript

Map и объект в JavaScript имеют ключевые различия:

  1. Ключи: В объекте ключи могут быть только строками или символами, в Map - любые типы (объекты, функции, примитивы).

  2. Порядок элементов: Map сохраняет порядок вставки элементов, объект - нет (хотя в современных реализациях порядок часто сохраняется).

  1. Размер: У Map есть свойство size, для объекта нужно вручную считать ключи через Object.keys().length.

  2. Итерация: Map имеет встроенные методы для итерации (forEach, for...of), объект требует преобразования (Object.keys(), Object.entries()).

  3. Производительность: Map оптимизирован для частых добавлений/удалений.

Пример:

javascript
const map = new Map();
map.set({}, 'object key');
map.set(42, 'number key');

const obj = {};
obj[{}.toString()] = 'object key'; // ключ станет '[object Object]'
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы