We've learned about events, their life cycle, and how event-driven design works. An event is triggered by an action by the user (or programmatically based on the program logic) and enters its life cycle. In the event life cycle, our program can pick up on many pieces of information carried by the event object itself, such as the mouse position or target DOM node.
By understanding how Ajax works with events, you're well on your way toward becoming a fully fledged JavaScript developer. Ajax is incredibly important as its the conduit between JavaScript and external APIs. Since JavaScript is stateless and client-side JavaScript has no concept of sessions, it's important for Ajax calls to be asynchronous in nature; hence the introduction of tools such as fetch.
Congratulations! We've covered a lot of very dense material. Next up are frameworks and libraries in JavaScript.