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


В каком порядке выполняются microtask и macrotask?

Microtask выполняются раньше macrotask. Сначала выполняется весь синхронный код, затем очищается очередь microtask, и только потом берётся следующая macrotask. Promise.then и queueMicrotask относятся к microtask, а setTimeout — к macrotask. Это влияет на порядок выполнения кода и рендеринг. Понимание порядка помогает правильно писать асинхронную логику.

Подробнее

Что относится к microtask, а что к macrotask?

Microtask и macrotask — это разные очереди задач в Event Loop.
Microtask имеют более высокий приоритет и выполняются раньше.
Macrotask выполняются по одной за итерацию цикла.
Неправильное понимание их порядка часто приводит к неожиданному поведению кода.

Подробнее

Какие задачи относятся к microtasks, а какие к macrotasks?

Microtasks — это задачи с более высоким приоритетом, которые выполняются сразу после завершения текущего синхронного кода. К ним относятся Promise.then, catch, finally, queueMicrotask, MutationObserver. Macrotasks — это задачи общего планирования, такие как setTimeout, setInterval, setImmediate, обработчики событий и I/O. Event loop всегда сначала выполняет все microtasks, и только потом берёт следующую macrotask.

Подробнее

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

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

Подробнее

Какие API создают microtask, а какие macrotask?

Microtask — это задачи с более высоким приоритетом, которые выполняются сразу после текущего стека вызовов. Macrotask — задачи с обычным приоритетом, которые обрабатываются по очереди между рендерами. Promise и queueMicrotask создают microtask, а setTimeout и события DOM — macrotask. Разница влияет на порядок выполнения и рендер.

Подробнее

Будут ли накапливаться задачи в очереди во время блокировки UI?

  • Рейтинг:

    4

  • Сложность:

    5

Да, задачи будут накапливаться в соответствующих очередях. Цикл событий JavaScript однопоточный. Пока основной поток заблокирован выполнением синхронного кода, цикл событий не может перейти к следующей фазе и обработать задачи из очередей. Однако, как только блокировка завершится, цикл событий начнёт обрабатывать накопившиеся задачи: сначала все микрозадачи (например, промисы), а затем по одной макрозадаче (например, таймеры, события).
Подробнее
  • Рейтинг:

    5

  • Сложность:

    8

  • Рейтинг:

    5

  • Сложность:

    7

  • Рейтинг:

    5

  • Сложность:

    7

  • Рейтинг:

    5

  • Сложность:

    6

  • Рейтинг:

    5

  • Сложность:

    7