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

Подробнее

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

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

Подробнее

Гарантирует ли setTimeout выполнение callback ровно через заданное время?

setTimeout не гарантирует выполнение callback ровно через указанное время. Он гарантирует, что callback не выполнится раньше, чем пройдёт заданная задержка. После истечения задержки callback попадает в очередь задач и будет выполнен, когда освободится call stack. На фактическое время влияет нагрузка, блокировки и приоритеты очередей. Поэтому таймер часто срабатывает позже.

Подробнее

Почему setTimeout может выполниться позже указанного времени?

setTimeout может выполниться позже, потому что после истечения времени callback попадает в очередь задач и ждёт своей очереди. Если основной поток занят синхронным кодом, выполнение откладывается. Также задержку увеличивают microtask, рендер и обработка событий. В фоне браузер может специально замедлять таймеры. Поэтому задержка может стать заметно больше, чем указанное значение.

Подробнее

В каком порядке выполняются setTimeout и Promise.then?

Promise.then всегда выполняется раньше, чем setTimeout, даже если таймер имеет задержку 0. Это происходит потому, что then попадает в очередь microtasks, а setTimeout — в очередь macrotasks. После завершения синхронного кода event loop сначала очищает очередь microtasks, и только потом берёт следующую macrotask.

Подробнее

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

В каком порядке выполняются Promise, setTimeout и синхронный код?

Как выполняется Promise, если его вызов обёрнут в setTimeout?

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

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

  • Рейтинг:

    4

  • Сложность:

    5

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

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

    5

  • Сложность:

    7

Сначала выполняется весь синхронный код. Затем выполняются microtask, включая обработчики Promise. После этого выполняются macrotask, такие как setTimeout. Этот порядок повторяется на каждой итерации event loop. Поэтому Promise обычно выполняется раньше setTimeout.

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

    5

  • Сложность:

    5

setTimeout помещает колбэк в очередь макрозадач. Promise внутри него создаётся и резолвится уже во время выполнения этой макрозадачи. Микрозадачи Promise будут выполнены сразу после завершения текущего колбэка setTimeout, но до следующей макрозадачи. Это влияет на порядок выполнения кода.

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

    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. Это означает, что их поведение может немного отличаться в разных средах, хотя основная функциональность одинакова.
Подробнее
  • Рейтинг:

    3

  • Сложность:

    5

  • Рейтинг:

    2

  • Сложность:

    7

  • Рейтинг:

    5

  • Сложность:

    6

  • Рейтинг:

    4

  • Сложность:

    7

  • Рейтинг:

    5

  • Сложность:

    6