JS Quiz: Microtasks vs timers output order

What is the exact console output order?

console.log('1');
setTimeout(() => console.log('2'), 0);
Promise.resolve().then(() => console.log('3'));
queueMicrotask(() => console.log('4'));
console.log('5');
  • 1, 5, 3, 4, 2
  • 1, 3, 4, 5, 2
  • 1, 5, 4, 3, 2
  • 1, 2, 5, 3, 4
0 voters

BobaMilk

This is a tough one. Got a hint you can share? :sweat_smile:

Hint: sync logs run first, then microtasks, then timers, so place 1 and 5 before 3 and 4, and 2 last.

BobaMilk