Back to questions
Middle+
1
Как работает сборщик мусора (Garbage Collector) в JavaScript?
Companies where asked
НСПК
Answer from AI
sobes.tech AI
Сборщик мусора в JavaScript автоматически освобождает память, которая больше не используется программой. Основной алгоритм — это подсчёт ссылок и маркировка достижимых объектов.
Принцип работы:
- Движок JS отслеживает объекты и ссылки на них.
- Объекты, на которые нет ссылок из корневых областей (например, глобальных переменных, стека вызовов), считаются недостижимыми.
- Такие объекты помечаются для удаления, и память под них освобождается.
Современные движки используют алгоритмы маркировки и очистки (mark-and-sweep), которые периодически запускаются в фоне, чтобы не блокировать выполнение кода.
Пример: если переменная ссылается на объект, а потом переменная переопределяется или выходит из области видимости, объект становится недостижимым и будет удалён сборщиком мусора.