參考連接
官方文件
綜合介紹
- 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
- 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 新增語法點介紹
- Timothy Gu, How to Read the ECMAScript Specification: 如何讀懂 ES6 規格
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
- Cynthia Lee, When you should use ES6 arrow functions — and when you shouldn’t: 討論箭頭函數的適用場合
對象
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
- Jake Archibald, Tasks, microtasks, queues and schedules
- 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 函數
- Luke Hoban, Async Functions for ECMAScript: Async 函數的設計思想,與 Promise、Gernerator 函數的關係
- Jafar Husain, Asynchronous Generators for ES7: Async 函數的深刻討論
- Nolan Lawson, Taming the asynchronous beast with ES7: async 函數通俗的實例講解
- Jafar Husain, Async Generators: 對 async 與 Generator 混合使用的一些討論
- Daniel Brain, Understand promises before you start using async/await: 討論 async/await 與 Promise 的關係
- Jake Archibald, Async functions - making promises friendly
- Axel Rauschmayer, ES proposal: asynchronous iteration: 異步遍歷器的詳細介紹
- Dima Grossman, How to write async await without try-catch blocks in JavaScript: 除了 try/catch 之外的 async 函數內部捕捉錯誤的方法
- Mostafa Gaafa, 6 Reasons Why JavaScript’s Async/Await Blows Promises Away: Async 函數的6個好處
- Mathias Bynens, Asynchronous stack traces: why await beats Promise#then(): 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 的轉碼器
歡迎關注本站公眾號,獲取更多信息