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

В чем разница между BigMap и Map

Map и WeakMap в JavaScript различаются по типу ключей, сборке мусора и итерации:

  1. Ключи:
    • Map позволяет использовать любые типы данных (объекты, примитивы).
    • WeakMap принимает только объекты в качестве ключей.
  1. Сборка мусора:

    • WeakMap не препятствует удалению ключей-объектов сборщиком мусора, если на них нет других ссылок.
    • Map удерживает ключи в памяти, пока они не удалены явно.
  2. Итерация:

    • Map поддерживает методы для итерации (keys(), values(), entries()).
    • WeakMap не предоставляет таких методов (нет доступа к списку ключей/значений).

Пример:

javascript
const map = new Map();
map.set('key', 'value'); // Примитив как ключ

const weakMap = new WeakMap();
const obj = {};
weakMap.set(obj, 'value'); // Только объект как ключ
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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