The Single Thread
JavaScript is single-threaded. There is one call stack. Only one thing runs at a time. The event loop is the mechanism that makes it feel concurrent: it picks tasks off a queue and pushes them onto the stack when the stack is empty.