Термин

Утечка памяти: определение и проверка

Утечка памяти — ситуация, когда приложение продолжает удерживать уже ненужные данные и не позволяет освободить занимаемую память.

Что означает термин#

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

Практический пример#

Посетитель многократно открывает и закрывает диалог. При каждом открытии добавляется обработчик, который удерживает ссылку на удалённое содержимое. Память постепенно растёт. Исправление связано с жизненным циклом обработчика, а не с принудительным удалением случайных переменных.

Как проверить#

Запишите воспроизводимый сценарий и сравните несколько снимков кучи в DevTools. Найдите сохраняющиеся объекты и цепочки удерживающих ссылок. Повторите измерение после очистки подписок и таймеров. Оценивайте одно окружение и одинаковые действия; одиночный снимок или колебание графика после загрузки не являются достаточным подтверждением проблемы.

Источники#

Проверены 23 октября 2026 г.. Официальные рекомендации отделены от наших примеров и результатов проверки.

Продолжить разбор