Логотип 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


Что такое setTimeout и setInterval?

setTimeout выполняет указанную функцию один раз через заданное время, а setInterval — периодически, с указанным интервалом. Оба метода работают асинхронно, что значит, что они не блокируют основной поток выполнения программы. Чтобы остановить выполнение setInterval, нужно вызвать clearInterval, а для остановки отложенного вызова setTimeout — clearTimeout.

Подробнее

Как написать React-компонент, чтобы при монтировании запускался setInterval, выводящий в консоль "Hello world" каждые 10 секунд? Что важно учесть при такой реализации с setInterval?

useEffect(() => {
  const intervalId = setInterval(() => {
    console.log('Hello world');
  }, 10000);
  return () => clearInterval(intervalId); // Очистка при размонтировании
}, []);

Важно:

  1. Очистка в return — иначе интервал будет работать после удаления компонента.

  2. Пустой массив зависимостей [] — чтобы эффект выполнился только при монтировании.

Подробнее

Как setInterval и setTimeout влияют на this?

В обычных функциях this внутри setInterval/setTimeout теряется (становится window/undefined в strict mode). Стрелочные функции сохраняют this из внешнего контекста.

Подробнее

Отличие анимации при использовании requestAnimationFrame и SetInterval

setInterval выполняет функцию с фиксированной задержкой, не учитывая частоту обновления экрана, что может приводить к пропуску кадров и лишним вычислениям. requestAnimationFrame синхронизирует выполнение кода анимации с частотой обновления экрана (обычно 60 кадров/с), что делает анимацию плавной и эффективной. Он также автоматически останавливается, когда пользователь переходит на другую вкладку, экономя ресурсы. Для плавных анимаций всегда следует предпочитать requestAnimationFrame.

Подробнее

Почему setInterval нужно очищать при размонтировании компонента?

setInterval продолжает работать даже после того, как компонент исчез со страницы, потому что он живёт отдельно от React. Если интервал не очистить, он будет дальше выполнять код, тратить ресурсы и может пытаться обновлять state уже размонтированного компонента. Это приводит к лишним вычислениям, странным багам и предупреждениям в консоли. Поэтому таймеры нужно останавливать в cleanup-функции useEffect.

Подробнее

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

Чем setInterval хуже setTimeout для polling?

setTimeout и setInterval как стандарт JavaScript

Является ли setTimeout и setInterval стандартом языка JavaScript?

Является ли setTimeout и setInterval стандартом JavaScript или нет?

  • Рейтинг:

    5

  • Сложность:

    4

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

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

    4

  • Сложность:

    5

setInterval запускает обработчик по расписанию, даже если предыдущий запрос ещё не закончился, из-за чего появляются параллельные запросы и лишняя нагрузка. Интервалы также “плывут” (drift): если обработчик выполняется долго, фактические моменты запуска смещаются. setTimeout удобнее для polling, потому что позволяет запускать следующий запрос после завершения предыдущего и гибко менять задержку (например, при ошибках увеличить).

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

    4

  • Сложность:

    3

Функции setTimeout и setInterval не являются частью стандарта языка JavaScript (ECMAScript). Они предоставляются средой выполнения, такой как браузер или Node.js, через Web API или другие API окружения. В спецификации ECMAScript нет описания этих функций. Они используются для отложенного или периодического выполнения кода, но их реализация и доступность зависят от конкретной платформы.
Подробнее
  • Рейтинг:

    3

  • Сложность:

    2

setTimeout и setInterval не являются частью стандарта языка JavaScript (ECMAScript). Они предоставляются средой выполнения, такой как браузер или Node.js, через Web API. В браузерах они определены в спецификации WHATWG HTML Living Standard, а в Node.js — в модуле timers. Это означает, что их поведение может немного отличаться в разных средах, хотя основная функциональность одинакова.
Подробнее
  • Рейтинг:

    4

  • Сложность:

    3

setTimeout и setInterval не являются частью стандарта языка JavaScript (ECMAScript). Они предоставляются средой выполнения, такой как браузер или Node.js, через Web APIs. В браузерах они определены в спецификации HTML Living Standard, а в Node.js — в модуле timers. Эти функции позволяют откладывать выполнение кода, используя механизм event loop.
Подробнее
  • Рейтинг:

    3

  • Сложность:

    5

  • Рейтинг:

    5

  • Сложность:

    6

  • Рейтинг:

    2

  • Сложность:

    7

  • Рейтинг:

    5

  • Сложность:

    4

  • Рейтинг:

    5

  • Сложность:

    4