To get the most out of modern JavaScript, you need learn the latest features of its parent specification, ECMAScript 6 (ES6). This book provides a highly practical look at ES6, without getting lost in the specification or its implementation details. Armed with practical examples, author Nicolas Bevacqua shows you new ways to deal with asynchronous flow control, declare objects or functions, and create proxies or unique sets, among many other features.
The first title in Bevacqua's Modular JavaScript series, Practical Modern JavaScript prepares JavaScript and Node.js developers for applied lessons in modular design, testing, and deployment in subsequent books.
This book explains:
How JavaScript and its standards development process have evolved Essential ES6 changes, including arrow functions, destructuring, let and const
Class syntax for declaring object prototypes, and the new Symbol primitive How to handle flow control with Promises, iterators, generators, and async functions ES6 collection built-in types for creating object maps and unique sets How and when to use the new Proxy and Reflect built-ins Changes to Array, Math, numbers, strings, Unicode, and regular expressions, and other improvements since ES5
A good writeup on the new es6 features. I agree with his perspective in the last chapter where he says that not every language feature is good in every use case. We got to be sensible in how we code, and at the end of the day it's about readability rather than making use of new language features.
More comprehensive and less practical than I'd hoped. Might have done better to start with the last chapter ("Practical Considerations") and let that inform what I read closely and what I skipped (e.g., proxies).
Most of the principles apply not only to Javascript, but to many other languages as well. What I did not like is that the author was missing high level concepts with low-level (like variable interpolation).