参考链接
官方文件
综合介绍
- Axel Rauschmayer, Exploring ES6: Upgrade to the next version of JavaScript: ES6的专著,本书的许多代码实例来自该书
 
- Sayanee Basu, Use ECMAScript 6 Today
 
- Ariya Hidayat, Toward Modern Web Apps with ECMAScript 6
 
- Dale Schouten, 10 Ecmascript-6 tricks you can perform right now
 
- Colin Toh, Lightweight ES6 Features That Pack A Punch: ES6的一些“轻量级”的特性介绍
 
- Domenic Denicola, ES6: The Awesome Parts
 
- Nicholas C. Zakas, Understanding ECMAScript 6
 
- Justin Drake, ECMAScript 6 in Node.JS
 
- Ryan Dao, Summary of ECMAScript 6 major features
 
- Luke Hoban, ES6 features: ES6新语法点的罗列
 
- Traceur-compiler, Language Features: Traceur文档列出的一些ES6例子
 
- Axel Rauschmayer, ECMAScript 6: what’s next for JavaScript?: 关于ES6新增语法的综合介绍,有很多例子
 
- Axel Rauschmayer, Getting started with ECMAScript 6: ES6语法点的综合介绍
 
- Toby Ho, ES6 in io.js
 
- Guillermo Rauch, ECMAScript 6
 
- Charles King, The power of ECMAScript 6
 
- Benjamin De Cock, Frontend Guidelines: ES6最佳实践
 
- Jani Hartikainen, ES6: What are the benefits of the new features in practice?
 
- kangax, Javascript quiz. ES6 edition: ES6小测试
 
- Jeremy Fairbank, HTML5DevConf ES7 and Beyond!: ES7新增语法点介绍
 
let 和 const
解构赋值
字符串
正则
数值
数组
函数
- Nicholas C. Zakas, Understanding ECMAScript 6 arrow functions
 
- Jack Franklin, Real Life ES6 - Arrow Functions
 
- Axel Rauschmayer, Handling required parameters in ECMAScript 6
 
- Dmitry Soshnikov, ES6 Notes: Default values of parameters: 介绍参数的默认值
 
- Ragan Wald, Destructuring and Recursion in ES6: rest参数和扩展运算符的详细介绍
 
- Axel Rauschmayer, The names of functions in ES6: 函数的name属性的详细介绍
 
- Kyle Simpson, Arrow This: 箭头函数并没有自己的this
 
- Derick Bailey, Do ES6 Arrow Functions Really Solve “this” In JavaScript?:使用箭头函数处理this指向,必须非常小心
 
- Mark McDonnell, Understanding recursion in functional JavaScript programming: 如何自己实现尾递归优化
 
- Nicholas C. Zakas, The ECMAScript 2016 change you probably don't know: 使用参数默认值时,不能在函数内部显式开启严格模式
 
- Axel Rauschmayer, ES proposal: optional catch binding
 
对象
Symbol
Set和Map
Proxy 和 Reflect
- Nicholas C. Zakas, Creating defensive objects with ES6 proxies
 
- Axel Rauschmayer, Meta programming with ECMAScript 6 proxies: Proxy详解
 
- Daniel Zautner, Meta-programming JavaScript Using Proxies: 使用Proxy实现元编程
 
- Tom Van Cutsem, Harmony-reflect: Reflect对象的设计目的
 
- Tom Van Cutsem, Proxy Traps: Proxy拦截操作一览
 
- Tom Van Cutsem, Reflect API
 
- Tom Van Cutsem, Proxy Handler API
 
- Nicolas Bevacqua, ES6 Proxies in Depth
 
- Nicolas Bevacqua, ES6 Proxy Traps in Depth
 
- Nicolas Bevacqua, More ES6 Proxy Traps in Depth
 
- Axel Rauschmayer, Pitfall: not all objects can be wrapped transparently by proxies
 
- Bertalan Miklos, Writing a JavaScript Framework - Data Binding with ES6 Proxies: 使用 Proxy 实现观察者模式
 
- Keith Cirkel, Metaprogramming in ES6: Part 2 - Reflect: Reflect API 的详细介绍
 
Promise 对象
- Jake Archibald, JavaScript Promises: There and back again
 
- Tilde, rsvp.js
 
- Sandeep Panda, An Overview of JavaScript Promises: ES6 Promise入门介绍
 
- Dave Atchley, ES6 Promises: Promise的语法介绍
 
- Axel Rauschmayer, ECMAScript 6 promises (2/2): the API: 对ES6 Promise规格和用法的详细介绍
 
- Jack Franklin, Embracing Promises in JavaScript: catch 方法的例子
 
- Ronald Chen, How to escape Promise Hell: 如何使用
Promise.all方法的一些很好的例子 
- Jordan Harband, proposal-promise-try: Promise.try() 方法的提案
 
- Sven Slootweg, What is Promise.try, and why does it matter?: Promise.try() 方法的优点
 
- Yehuda Katz, TC39: Promises, Promises: Promise.try() 的用处
 
Iterator
Generator
- Matt Baker, Replacing callbacks with ES6 Generators
 
- Steven Sanderson, Experiments with Koa and JavaScript Generators
 
- jmar777, What's the Big Deal with Generators?
 
- Marc Harter, Generators in Node.js: Common Misconceptions and Three Good Use Cases: 讨论Generator函数的作用
 
- StackOverflow, ES6 yield : what happens to the arguments of the first call next()?: 第一次使用next方法时不能带有参数
 
- Kyle Simpson, ES6 Generators: Complete Series: 由浅入深探讨Generator的系列文章,共四篇
 
- Gajus Kuizinas, The Definitive Guide to the JavaScript Generators: 对Generator的综合介绍
 
- Jan Krems, Generators Are Like Arrays: 讨论Generator可以被当作数据结构看待
 
- Harold Cooper, Coroutine Event Loops in Javascript: Generator用于实现状态机
 
- Ruslan Ismagilov, learn-generators: 编程练习,共6道题
 
- Steven Sanderson, Experiments with Koa and JavaScript Generators: Generator入门介绍,以Koa框架为例
 
- Mahdi Dibaiee, ES7 Array and Generator comprehensions:ES7的Generator推导
 
- Nicolas Bevacqua, ES6 Generators in Depth
 
- Axel Rauschmayer, ES6 generators in depth: Generator规格的详尽讲解
 
- Derick Bailey, Using ES6 Generators To Short-Circuit Hierarchical Data Iteration:使用 for...of 循环完成预定的操作步骤
 
异步操作和Async函数
Class
Decorator
Module
- Jack Franklin, JavaScript Modules the ES6 Way: ES6模块入门
 
- Axel Rauschmayer, ECMAScript 6 modules: the final syntax: ES6模块的介绍,以及与CommonJS规格的详细比较
 
- Dave Herman, Static module resolution: ES6模块的静态化设计思想
 
- Jason Orendorff, ES6 In Depth: Modules: ES6模块设计思想的介绍
 
- Ben Newman, The Importance of import and export: ES6模块的设计思想
 
- ESDiscuss, Why is "export default var a = 1;" invalid syntax?
 
- Bradley Meck, ES6 Module Interoperability: 介绍 Node 如何处理 ES6 语法加载 CommonJS 模块
 
- Axel Rauschmayer, Making transpiled ES modules more spec-compliant: ES6 模块编译成 CommonJS 模块的详细介绍
 
- Axel Rauschmayer, ES proposal: import() – dynamically importing ES modules: import() 的用法
 
- Node EPS, ES Module Interoperability: Node 对 ES6 模块的处理规格
 
二进制数组
SIMD
工具
- Babel, Babel Handbook: Babel的用法介绍
 
- Google, traceur-compiler: Traceur编译器
 
- Casper Beyer, ECMAScript 6 Features and Tools
 
- Stoyan Stefanov, Writing ES6 today with jstransform
 
- ES6 Module Loader, ES6 Module Loader Polyfill: 在浏览器和node.js加载ES6模块的一个库,文档里对ES6模块有详细解释
 
- Paul Miller, es6-shim: 一个针对老式浏览器,模拟ES6部分功能的垫片库(shim)
 
- army8735, Javascript Downcast: 国产的ES6到ES5的转码器
 
- esnext, ES6 Module Transpiler:基于node.js的将ES6模块转为ES5代码的命令行工具
 
- Sebastian McKenzie, BabelJS: ES6转译器
 
- SystemJS, SystemJS: 在浏览器中加载 AMD、CJS、ES6 模块的一个垫片库
 
- Modernizr, HTML5 Cross Browser Polyfills: ES6 垫片库清单
 
- Facebook, regenerator: 将 Generator 函数转为 ES5 的转码器