Sobes.tech
Back to questions
Middle+
1

Как работает сборщик мусора (Garbage Collector) в JavaScript?

Companies where asked
НСПК

Answer from AI

sobes.tech AI

Сборщик мусора в JavaScript автоматически освобождает память, которая больше не используется программой. Основной алгоритм — это подсчёт ссылок и маркировка достижимых объектов.

Принцип работы:

  • Движок JS отслеживает объекты и ссылки на них.
  • Объекты, на которые нет ссылок из корневых областей (например, глобальных переменных, стека вызовов), считаются недостижимыми.
  • Такие объекты помечаются для удаления, и память под них освобождается.

Современные движки используют алгоритмы маркировки и очистки (mark-and-sweep), которые периодически запускаются в фоне, чтобы не блокировать выполнение кода.

Пример: если переменная ссылается на объект, а потом переменная переопределяется или выходит из области видимости, объект становится недостижимым и будет удалён сборщиком мусора.