Like it or not, ECMAScript 6 is coming soon to a browser near you (and what’s not to like about that?). Learning about new additions to the specification is only a few clicks away.
Being in a “feature frozen” status since August of this year, ECMAScript 6 is on its path towards becoming a part of daily life. While the speed with which each browser manufacturer will implement these features will vary, adoption is inevitable.
I won’t waste pixels discussing why ECMAScript 6 is such a big deal. I’m assuming that you are aware of some of the more well-known features and are excited about them. But understandably, it can sometimes be difficult to decide where to jump in. I’ve gone through the tons of ECMAScript 6 bookmarks that have piled-up in my Google Docs and detailed the best ones below. This is by no means an exhaustive list; I tried to limit it to articles or videos that I felt were the most well-presented.
ECMAScript 6 Introduction
ECMAScript Language Specification ECMA-262 6th Edition – DRAFT
It doesn’t get much drier than this. But sometimes dry is good. There are many links out there that will be more enjoyable to read (and possibly more helpful), but when you really need to drill-down on a particular topic, the specification is always a source worth considering.
ECMAScript 6 with Kit Cambridge
Kit Cambridge, “EcmaScript Next: The Subtleties of ES 6” at W3Conf 2013
This is technically the same exact presentation as the previous video. But I must say, just like watching a good band perform the same song on two different occasions, it is still worth watching, even if you have seen the previous video.
Announcing Understanding ECMAScript 6 | NCZOnline
Toward Modern Web Apps with ECMAScript 6 | Blog | Sencha
Ariya Hidayat presents a clear and well-thought-out overview of some of ECMAScript 6’s most exciting features.
ECMAScript 6 Features
While there is much to shout about, it can also be a bit overwhelming. Here are the ECMAScript 6 features you are most likely to experiment with, or be asked about in an interview.
Functions have gotten a significant injection of new functionality: Greater control over lexical “this” binding and streamlined syntax.
ECMAScript Wiki – Arrow Functions
Understanding ECMAScript 6 arrow functions | NCZOnline
Kevin Chisholm – Blog
Learn about how the new “let” and “const” keywords break the “functions-only” paradigm with regard to managing scope.
If you’ve ever written a function that needs to take a variable number of arguments, you’ve probably used the Array.prototype.slice.call approach to convert the arguments object into a true array, or designed the function so that it expects an array. ECMAScript 6’s Rest Parameters removes this pain and makes for more concise code.
Default and Rest Parameters in ES6
ECMAScript 6 and Rest Parameter
A yang to the Rest Parameter’s ying, the Spread Operator allows you to pass the elements of an array to a function as individual arguments in one shot, without the need to iterate that array.
ECMAScript 6 and Spread Operator
An introduction to ES6 classes
Use ECMAScript 6 Today – Tuts+ Code Article