Когда выполняется cleanup-функция в `useEffect` и что она делает в этом случае?

Cleanup-функция в useEffect срабатывает в следующих случаях:

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

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

Cleanup-функция в useEffect срабатывает в следующих случаях:

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

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

Cleanup-функция в useEffect срабатывает в следующих случаях:

  • Перед повторным выполнением эффекта при изменении зависимостей.
  • При размонтировании компонента.

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

Пример:

useEffect(() => {
  const id = setInterval(() => {
    console.log('tick');
  }, 1000);

  return () => {
    clearInterval(id); // очистка при размонтировании или обновлении
  };
}, []); // пустой массив зависимостей — эффект сработает один раз

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку