> Можно ли явно добавить микротаск в JavaScript (JavaScript)

Уровень: senior · Роль: frontend · Категория: Технические вопросы

Компании: Avito

Стек: JavaScript

> Пример ответа

Да, в JavaScript можно явно добавить микротаск с помощью API queueMicrotask(). Этот метод принимает функцию, которая будет выполнена как микротаск - то есть после завершения текущего макрозадачи (например, после обработки события или выполнения основного скрипта), но до следующей макрозадачи (например, до следующего setTimeout или рендеринга).

Пример:

JAVASCRIPT
queueMicrotask(() => {
console.log('Это микротаск');
});
console.log('Синхронный код');
setTimeout(() => console.log('Макрозадача'), 0);
// Вывод: "Синхронный код", затем "Это микротаск", затем "Макрозадача"

Также микротаски можно добавлять через промисы (.then(), .catch(), .finally()), так как они обрабатываются в рамках очереди микротасков. Однако queueMicrotask является более прямым и явным способом, без необходимости создавать промис.

> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?

Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью