EcmaScript 6 (ES6) is the future of JavaScript. It is highly anticipated and contains many useful features seen in other programming languages like Python and CoffeScript. At Iterate we had an internal ES6 workshop where we went through some of the new ES6 features. We wanted to share the work we did preparing the workshop in this blog post. We recommend that you do the tasks right after reading about each feature.
ES6 is not fully implemented in any browser yet, even the specifications are not finalized. Still there are a number of good options for how to use ES6 features today. We use es6ify which relies on Google’s traceur. Together with Browserify and Gulp we transpile our ES6 code to ES5.
Our set up is availble in our GitHub repo with helper methods for some of the tasks. There you can also find a solutions branch with suggestions for how to solve the tasks.
There is a long list of features and improvements in EcmaScript 6 (see the ES6 draft or the features supported by Traceur). In this workshop we made a selection of features to go through; template literals, default parameters, arrow functions, destructuring, rest parameters, spread operator and generators.