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

Как искать утечку памяти в React

В React утечки памяти часто возникают из-за несвоевременной очистки ресурсов. Основные причины:

  1. Неотписанные подписки (event listeners, WebSocket, RxJS)
  2. Неочищенные таймеры (setInterval, setTimeout)
  3. Утечки в хуках useEffect

Пример опасного кода:

jsx
useEffect(() => {
  const timer = setInterval(() => {...}, 1000);
  window.addEventListener('resize', handleResize);
  return () => {
    clearInterval(timer); // без этой строки - утечка
    window.removeEventListener('resize', handleResize);
  };
}, []);

Как искать:

  1. Используй Chrome DevTools → Memory → Heap Snapshots (сравнивай снимки до/после действий)
  2. Проверяй вкладку Performance → Memory в Chrome
  3. Для функциональных компонентов - следи за cleanup функциями в useEffect
  4. Для классовых - проверяй componentWillUnmount

Особое внимание уделяй глобальным событиям, сторонним библиотекам и тяжелым объектам в состоянии.

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

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

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

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