Asynchronous JS
Introduction
Since Javascript is single threaded, it can only handle one thing at a time. If JS had to run synchronously, meaning the code runs line by line as it is written, we would run into issues where tasks that take a while would block the whole program.
Imagine you enter a cafe, and want to do the following
- Order breakfast
- Eat breakfast
- Write some code
You could do all of these tasks synchronously, but that would be inneficient. While you obviously can't start eating before your food arives, there's nothing stopping you from writing code while you wait for your order
orderBreakfast().then(food => eat(food))
writeSomeCode()
Callback functions
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Illo laudantium pariatur numquam harum distinctio architecto velit odit facilis quasi tenetur voluptas illum sint quam dignissimos veniam, autem quos corrupti suscipit voluptatum aut commodi. Consequuntur necessitatibus ullam nisi
Promises
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Illo laudantium pariatur numquam harum distinctio architecto velit odit facilis quasi tenetur voluptas illum sint quam dignissimos veniam, autem quos corrupti suscipit voluptatum aut commodi. Consequuntur necessitatibus ullam nisi
Async Await
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Illo laudantium pariatur numquam harum distinctio architecto velit odit facilis quasi tenetur voluptas illum sint quam dignissimos veniam, autem quos corrupti suscipit voluptatum aut commodi. Consequuntur necessitatibus ullam nisi
press 'run' to view console output