В продолжении темы про непопулярные структуры данных в JavaScript, такие как Map и Set.
Я решила вспомнить, в чем особенность WeakMap и WeakSet, и вот краткая памятка.
WeakMap
- Хранит пары ключ-значение, где ключи — только объекты.
- Ключи "слабые": если на объект-ключ больше нет ссылок, он удаляется сборщиком мусора.
- Нет методов для итерации.
WeakSet
- Хранит только объекты, каждое из которых уникально.
- Объекты "слабые": они удаляются, если нет других ссылок на них.
- Не поддерживает итерацию и не имеет свойства размера.
Такие структуры данных можно использовать, например, для кэширования (WeakMap) или хранения информации вида “да/нет” (WeakSet).
Post #127
657
Настя Котова // Frontend & Node.js Я уже давно работаю во фронтенде, но все равно периодически забываю о том, что в JavaScript появляются новые удобные инструменты. Так, я заметила, что упускаю из виду Map и Set. Для тех, кто так же, как и я, забывает про них, напомню: - Map похож на обычный…
- 👍 2