Understanding the difference between setTimeout (Macrotask) and Promise.then (Microtask) is what separates junior and senior JS developers.
Execution Order:
1. Synchronous Code
2. All Microtasks (Promises)
3. Render UI
4. Macrotasks (Timers)
1. Synchronous Code
2. All Microtasks (Promises)
3. Render UI
4. Macrotasks (Timers)
