Skip to main content

Call stack, microtasks, timers

JavaScript Event Loop Visualizer

Visualize how JavaScript moves from synchronous code to microtasks, timers, runtime callbacks, output, memory, and blocked work.

Short answer

The event loop only moves queued work forward when the call stack is clear, and microtasks usually drain before timer callbacks.

People search this as
JavaScript event loop visualizermicrotask queue visualizerJavaScript call stack timer queue

What the visualizer shows

The page highlights the current code line, call stack, queues, console output, waiting runtime work, blocked time, and explanation for the active step.

Why it matters

Most confusing async bugs are ordering bugs. A visual timeline helps users see what waits, what runs now, and what cannot run until later.

Best first case

Start with Promise before setTimeout, then move into blocking loops, nested timers, and microtask floods.

Practice this topic

Start with the strongest case, then continue through related examples.

Search all cases