Before we get into the code, I think it's important to go over different JavaScript Versions and how they'll be used in the book. I'd also like to go over how I'll present examples that require tooling.
As you may be aware, there's been a lot of work over the past few years around evolving the JavaScript programming language. Some of this work is really, really great. So great, in fact, that the dominant libraries and frameworks on the web right now are idiomatically written in versions and variations of JavaScript that aren't universally available in web browsers. Working in bleeding-edge versions of the language, including framework-specific extensions, is possible because of the use of a transpiler (https://scotch.io/tutorials/javascript-transpilers-what-they-are-why-we-need-them), a piece of software that takes software code written in one language (or in this case, a version of a language) and outputs code in another language (in this...