Утечка возникает, когда ненужные данные остаются достижимыми: через слушатели, таймеры, подписки, глобальные коллекции или удерживаемые DOM-узлы.
Какими способами можно создать утечку памяти в JavaScript?
Утечка возникает, когда ненужные данные остаются достижимыми: через слушатели, таймеры, подписки, глобальные коллекции или удерживаемые DOM-узлы.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Утечка возникает, когда ненужные данные остаются достижимыми: через слушатели, таймеры, подписки, глобальные коллекции или удерживаемые DOM-узлы.
Сборщик мусора освобождает только недостижимое. Само замыкание не является утечкой, но может долго удерживать большой объект. Используйте cleanup, ограниченные кеши и профили памяти; сравнивайте heap snapshots после повторения и завершения сценария, а не только единичный рост памяти.