В приложении мы используем прослушивание событий, например повесили обработчик scroll на window или запустили таймер - что необходимо учесть в этом случае (утечки памяти, троттлинг, очистка при unmount)?

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

Короткий ответ

Что ответить на собеседовании

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

Подробный разбор

Ответ с пояснениями

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

Для removeEventListener нужны тот же callback и подходящий capture; для таймера сохраните ID. Scroll-обработка должна быть лёгкой, с throttle или координацией через animation frame по задаче. Очистка важна и при повторной настройке эффекта, иначе обработчики накапливаются.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее