С then всё понятно, не могу найти где почитать, на mdn в разделах async/await/AsyncFunction object ничего на этот счёт не нашёл.
- Спецификацию пока избегаю намеренно, трудоёмко выйдет.
Вот минимальный пример, всё что после await можно считать микро-задачами?
console.log("sync start"); // 1
setTimeout(() => {
console.log("setTimeout"); // 6
}, 0);
Promise.resolve().then(() => {
console.log("promise then"); // 4
});
(async () => {
console.log("async start"); // 2
await null; // любой await ставит продолжение тела функции в очередь микрозадач
console.log("async after await"); // 5
})();
console.log("sync end"); // 3
/*
"sync start"
"async start"
"sync end"
"promise then"
"async after await"
"setTimeout"
*/