Javascript is an asynchronous programming language. the main reason why its asynchronous because it is also single threaded.
info
you can use Webworkers to utilise more then one threads at a time.
What is asynchronous Programming:
In programming, the term asynchronous refers to code that doesn't block the main program flow while waiting for long-running operations to complete. This is in contrast to synchronous code, which executes line by line and waits for each operation to finish before moving on.