Paste some code, then press Start to see it flow through the call stack, Web APIs, queues and the event loop. Or step through each move yourself.
Holds the function being run. A new call goes on top and leaves when it returns.
Async work such as timers happens outside the stack. When it finishes, the callback is queued.
Finished timer callbacks wait here. Promise jobs are served first.
Watches the stack. When it is empty, it moves the next waiting job onto it.