Логотип YeaHub

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

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

Тренажёр

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

Обучение

Навыки

Задачи

Войти

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

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

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Специализация

Python Backend Developer

Java Backend Developer

Node.js Backend Developer

Golang Backend Developer

React Frontend Developer

Посмотреть все

Выберите навыки

React

React

JavaScript

JavaScript

Git

Git

Redux

Redux

Webpack

Webpack

Посмотреть все

Сложность

1-3

4-6

7-8

9-10

Рейтинг вопросов

1

2

3

4

5

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

Вопросы React Frontend Developer


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

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

Чем WeakMap отличается от Map?

Когда элементы WeakMap удаляются сборщиком мусора?

  • Рейтинг:

    5

  • Сложность:

    8

WeakMap — это коллекция пар ключ-значение, где ключи могут быть только объектами, а значения могут быть любого типа. Главная особенность WeakMap заключается в том, что он не удерживает сильные ссылки на ключи, что позволяет сборщику мусора автоматически очищать элементы, если на них больше нет ссылок. У WeakMap есть методы set(), get(), has() и delete(), однако его нельзя перебрать с помощью обычных методов, так как WeakMap не предоставляет итераторов.

Подробнее
  • Рейтинг:

    5

  • Сложность:

    8

WeakSet — это коллекция уникальных объектов, где каждый объект хранится с использованием слабой ссылки. Главная особенность WeakSet заключается в том, что он не удерживает ссылки на свои элементы, что позволяет сборщику мусора автоматически удалять объекты, если на них больше нет ссылок. Методы WeakSet включают add(), delete() и has(), однако его нельзя перебрать, так как WeakSet не предоставляет итераторов.

Подробнее
  • Рейтинг:

    5

  • Сложность:

    6

WeakMap отличается тем, что его ключи могут быть только объектами, и они хранятся как слабые ссылки. Если на объект-ключ больше нет сильных ссылок, он удаляется сборщиком мусора вместе со значением. В WeakMap нельзя итерироваться по элементам и узнать размер. Map таких ограничений не имеет и удерживает данные в памяти.

Подробнее
  • Рейтинг:

    4

  • Сложность:

    5

Элементы WeakMap удаляются сборщиком мусора, когда на их ключи больше нет сильных ссылок из других частей программы. В отличие от Map, WeakMap хранит ключи как слабые ссылки, что не препятствует сборке мусора. Это полезно для хранения метаданных или кэшей, связанных с объектами, время жизни которых вы не контролируете. Когда объект-ключ становится недостижим, соответствующая пара ключ-значение автоматически удаляется из WeakMap.
Подробнее