Summary
In this chapter, we focused on the asynchronous nature of the JavaScript runtime, and what techniques we can use to work with this feature. We started with callbacks, which is a standard way of handling asynchronous calls within JavaScript. We also explored the concept of callback hell, which is where using callbacks can become a bit of a nightmare. We then explored Promises, showing how the simple but strict syntax can be applied to any type of asynchronous processing. Finally, we examined the new async await syntax that can be used to pause execution of a code block until a Promise has completed.
In the next chapter, we will take a look at decorators, and how we can inject functionality into existing code using a simple decorator convention.