We all make mistakes when coding, and knowing how to find, diagnose, and debug those problems is a key skill in any language. In this chapter, we've taken a look at how the Error object and the console provide us with rich diagnostic information on where an error occurred, what details are piggybacking on the object, and how to read them. Don't forget that, sometimes, the error may look one way on the surface (our JSON error in The Error Object section), and don't be afraid to experiment with tracing through your code with console statements and breakpoints.
Since JavaScript runs client-side, it's important to keep in mind the performance capacity of your users. There are many best practices when writing JavaScript, such as reusing variables (especially DOM-related ones), so always be sure to keep your code DRY (Don't Repeat Yourself).
In the next chapter, we'll wrap up working with the frontend and understand how JavaScript truly is the ruler of...