А вы знаете про Hack Frontend Community?Присоединяйтесь в Telegram!
Решать JS задачи

queueMicrotask: добавление задачи в очередь микротасок

Что такое queueMicrotask

queueMicrotask() — это встроенная функция JavaScript, которая добавляет задачу в очередь микрозадач (microtask queue).

Микрозадачи выполняются сразу после завершения текущего стека вызовов и до следующей макрозадачи (например, setTimeout, setInterval, обработчик события).

Синтаксис

queueMicrotask(() => {
  // Ваш код
});

Пример использования

console.log("Start");

setTimeout(() => {
  console.log("Timeout");
}, 0);

queueMicrotask(() => {
  console.log("Microtask Hack Frontend");
});

console.log("End");

Что выведется?

Start
End
Microtask Hack Frontend
Timeout

queueMicrotask всегда выполняется раньше setTimeout, даже если у таймера задержка 0.

Где используется queueMicrotask

  • Внутри библиотек и фреймворков для оптимизации очередей (React, Vue, Zone.js)
  • Для обновления состояния после текущего вызова, но до рендера
  • Для предсказуемого порядка выполнения

Совет:

Используйте queueMicrotask, если хотите выполнить задачу асинхронно, но сразу после текущей операции — быстрее, чем setTimeout(...).

Вывод

  • queueMicrotask() — способ добавить задачу в микротаски, которая выполнится после текущего стека, но до макрозадач.
  • Это быстрый и надёжный способ отложить выполнение кода, не дожидаясь следующего рендера или события.
  • Используется для точного контроля порядка выполнения в асинхронных операциях.
Решать JS задачи

Продолжая работу с платформой, вы принимаете условия Политики конфиденциальности и использование файлов cookie.