JavaScript · Junior · Запитання 32 з 75

У якому порядку виведуться числа?

console.log(1);
setTimeout(() => console.log(2), 0);
Promise.resolve().then(() => console.log(3));
console.log(4);

Пояснення

Спершу виконується синхронний код (1, 4). Потім event loop виконує всі мікрозадачі - колбеки промісів (3), і лише потім наступну макрозадачу - таймер (2). setTimeout(fn, 0) не означає «негайно».

Де почитати

Помилка в запитанні

JavaScript · Junior · запитання 32

Перевірте себе

Пройдіть тест JavaScript · Junior: запитання й варіанти перемішуються, а наприкінці - розбір помилок.

Пройти цей тест