Специализация
Python Backend Developer
Java Backend Developer
Node.js Backend Developer
Golang Backend Developer
React Frontend Developer
Выберите навыки
React
JavaScript
Git
Redux
Webpack
Сложность
1-3
4-6
7-8
9-10
Рейтинг вопросов
1
2
3
4
5
Подпишись на React Developer в телеграм
WeakMap. В чем особенность? Какие свойства и методы есть? Как перебрать?
WeakMap — это коллекция пар ключ-значение, где ключи могут быть только объектами, а значения могут быть любого типа. Главная особенность WeakMap заключается в том, что он не удерживает сильные ссылки на ключи, что позволяет сборщику мусора автоматически очищать элементы, если на них больше нет ссылок. У WeakMap есть методы set(), get(), has() и delete(), однако его нельзя перебрать с помощью обычных методов, так как WeakMap не предоставляет итераторов.
Чем WeakMap отличается от Map?
WeakMap отличается тем, что его ключи могут быть только объектами, и они хранятся как слабые ссылки. Если на объект-ключ больше нет сильных ссылок, он удаляется сборщиком мусора вместе со значением. В WeakMap нельзя итерироваться по элементам и узнать размер. Map таких ограничений не имеет и удерживает данные в памяти.
Когда элементы WeakMap удаляются сборщиком мусора?
Рейтинг:
5
Сложность:
8
Рейтинг:
5
Сложность:
6
Рейтинг:
4
Сложность:
5