Встречается на собеседованиях • сегодня

Когда возникает утечка памяти

Утечка памяти возникает, когда объекты остаются в памяти, хотя больше не нужны. Основные причины во фронтенде:

  1. Неочищенные слушатели событий
js
// Плохо
element.addEventListener('click', handler);
// Хорошо
element.removeEventListener('click', handler);
  1. Замыкания
    Переменные в замыканиях могут удерживать ссылки на большие объекты.

  2. Глобальные переменные

js
window.data = hugeArray; // Будет висеть до перезагрузки
  1. Таймеры/интервалы
js
const timer = setInterval(...);
clearInterval(timer); // Не забыть!
  1. Утечки в SPA
    Неочищенные подписки (RxJS, Redux) или ссылки на DOM-элементы после unmount компонента.

Для обнаружения используйте Chrome DevTools → Memory → Heap Snapshot. Сравнивайте снимки до/после действий.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы