ES6(ECMAScript 6th edition) 于 2015 年 7 月份发布,虽然各大浏览器仍未全面支持 ES6,但我们可以在后端通过 Node.js 0.12 和 io.js,而前端则通过 Traceur 或 Babel 这类 Transpiler 将 ES6 语法预转译为 ES5 语法,来提前兴奋一把。而仅需适配 IE9 + 的朋友们现在更是可以开始撸 ES6 了,而不必为学哪门 JavaScript 超集语言而烦恼。(ES6 又名为 ECMAScript 2015 或 JavaScript.next,ES4 的部分较为激进的特性被调用到该版本中实现。) ES6 带给我们很多惊喜,如 class、module、export 和 import 等。但在学习和运用到项目中时,我们需要注意以下两点: 1. ES6 包含的是语法糖和语言、库的 bug fix,对工程性问题没有太大的帮助; 2. 由于 Traceur 和 Babel 无法对 ES6 的所有特性进行完整高效的 polyfill,因此我们无法完全享用 ES6 的各项特性。 最近接手一个项目的前端改造,正在尝试全新的技术栈 (Riot+ES6+Glup+Webpack),本系列文章将作为理论 + 项目实践的笔记供日后查阅。