Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Специализация

Python Backend Developer

Java Backend Developer

Node.js Backend Developer

Golang Backend Developer

React Frontend Developer

Посмотреть все

Выберите навыки

React

React

JavaScript

JavaScript

Git

Git

Redux

Redux

Webpack

Webpack

Посмотреть все

Сложность

1-3

4-6

7-8

9-10

Рейтинг вопросов

1

2

3

4

5

Подпишись на React Developer в телеграм

Вопросы React Frontend Developer


Как реализовать cleanup-функцию в useEffect?

Когда вызывается cleanup-функция?

Как корректно очищать setInterval в useEffect?

Как cleanup-функция помогает решить race condition?

  • Рейтинг:

    5

  • Сложность:

    4

Cleanup-функция реализуется возвратом функции из useEffect. Эта функция вызывается перед повторным выполнением эффекта и при размонтировании компонента. Cleanup используется для очистки таймеров, подписок и слушателей событий. Это предотвращает утечки памяти и некорректное поведение.

Подробнее
  • Рейтинг:

    5

  • Сложность:

    5

Cleanup-функция вызывается перед повторным выполнением эффекта и при размонтировании компонента. Если у эффекта пустой массив зависимостей, cleanup вызовется только при unmount. В StrictMode в dev-режиме cleanup может вызываться чаще. Это нормальное поведение.

Подробнее
  • Рейтинг:

    5

  • Сложность:

    4

setInterval очищается через clearInterval, вызванный в функции, которую возвращает useEffect. Эта функция выполняется при размонтировании компонента и перед повторным запуском эффекта. Важно сохранить идентификатор интервала в переменную внутри эффекта. Такой подход гарантирует, что таймер не продолжит работать после ухода компонента со страницы.

Подробнее
  • Рейтинг:

    5

  • Сложность:

    8

Cleanup-функция в useEffect позволяет отменить или игнорировать результат старого запроса, когда эффект больше не актуален. Она вызывается перед повторным запуском эффекта или при размонтировании компонента. Благодаря этому устаревшие запросы не могут обновить состояние. Это один из базовых способов защиты от race condition.

Подробнее