参考リンク
##公式文書
- ECMAScript® 2015 言語仕様: ECMAScript 2015 仕様
- ECMAScript® 2016 言語仕様: ECMAScript 2016 仕様
- ECMAScript® 2017 言語仕様:ECMAScript 2017 仕様 (ドラフト)
- ECMAScript Current Proposals: 現在のすべての ECMAScript プロポーザル
- ECMAScript Active Proposals: 正式なプロセスに入ったプロポーザル
- ECMAScript 提案: ステージ 0 からステージ 4 までのすべての提案のリスト
- TC39 会議の議題: 長年にわたる TC39 委員会の会議議事録
- ECMAScript Daily: TC39 委員会の最新情報
- TC39 プロセス: 提案が正式仕様に入るプロセス
- TC39: プロセス スケッチ、ステージ 0 および 1: ステージ 0 とステージ 1 の意味
- TC39 プロセス スケッチ、ステージ 2: ステージ 2 の意味
包括的な紹介
- Axel Rauschmayer、Exploring ES6: Upgrade to the next version JavaScript: この本のコード例の多くは ES6 に関するモノグラフから引用されています。
- Sayanee Basu、ECMAScript 6 を今すぐ使用してください
- Ariya Hidayat、ECMAScript 6 を使用した最新の Web アプリに向けて
- Dale Schouten、今すぐ実行できる 10 の Ecmascript-6 トリック
- Colin Toh、パンチを詰め込んだ軽量 ES6 機能: ES6 のいくつかの「軽量」機能の紹介
- ドメニック デニコラ、ES6: 素晴らしいパーツ
- Nicholas C. Zakas、[ECMAScript 6 を理解する](https://github.com/nzakas/ Understandinges6)
- Justin Drake、Node.JS の ECMAScript 6
- Ryan Dao、ECMAScript 6 つの主要な機能の概要
- Luke Hoban、ES6 の機能: ES6 の新しい構文ポイントのリスト
- Traceur-compiler、[言語機能](https://github.com/google/traceur-compiler/wiki/Language features): Traceur ドキュメントにリストされている ES6 の例の一部
- Axel Rauschmayer、ECMAScript 6: What's next for JavaScript?: 新しい構文の包括的な紹介ES6 、多くの例があります
- Axel Rauschmayer、ECMAScript 6 入門: ES6 構文ポイントの包括的な紹介
- Toby Ho、io.js の ES6
- Guillermo Rauch、ECMAScript 6
- Benjamin De Cock、フロントエンド ガイドライン: ES6 ベスト プラクティス
- Jani Hartikainen、ES6: 実際の新機能の利点は何ですか?
- kangax、JavaScript クイズ。ES6 版: ES6 クイズ
- Jeremy Fairbank、HTML5DevConf ES7 and Beyond!: ES7 の新しい構文ポイントの紹介
- Timothy Gu、ECMAScript 仕様の読み方: ES6 仕様の読み方
let と const
- Kyle Simpson、let に賛成と反対: let コマンドの範囲について説明しています。
- kangax、typeof が「安全」ではなくなった理由: ブロック スコープでの let コマンドについての議論変数の宣言と代入の説明
- Axel Rauschmayer、ECMAScript 6 の変数とスコープ: ブロックレベルのスコープと let と const の動作について説明しています。
- Nicolas Bevacqua、[ES6 Let、Const、および「時間的デッド ゾーン」(TDZ) の詳細](http://ponyfoo.com/articles/es6-let-const-and-temporal-dead-zone-in- Depth )
- acorn、厳密モードの関数ステートメント: 厳密モードの関数宣言に対するブロックレベルのスコープの影響
- Axel Rauschmayer、ES 提案: グローバル: 最上位オブジェクト「グローバル」
- Mathias Bynens、ユニバーサル JavaScript の恐ろしい
globalThis
ポリフィル: globalThis shim ライブラリの書き方
代入の構造化
- Nick Fitzgerald、ECMAScript 6 の構造化代入: 構造化代入の使用方法の詳細な紹介
- Nicholas C. Zakas、ECMAScript 6 の構造化に関する注意点
弦
- Nicholas C. Zakas、ECMAScript 6 準リテラルの批判的レビュー
- Mozilla Developer Network、テンプレート文字列
- Addy Osmani、ES6 テンプレート文字列によるリテラルの取得: テンプレート文字列の概要
- Blake Winton、ES6 テンプレート: テンプレート文字列の概要
- Peter Jaszkowiak、JavaScript でテンプレート コンパイラーを作成する方法: テンプレート文字列を使用して、テンプレートコンパイル機能
- Axel Rauschmayer、ES.stage3: 文字列パディング
通常
- Mathias Bynens、ES6 の Unicode 対応正規表現: 正規表現の u 修飾子の詳細な紹介
- Axel Rauschmayer、ECMAScript 6 の新しい正規表現機能: ES6 の標準機能の詳細な紹介
- Yang Guo、RegExp 後読みアサーション: 後読みアサーションの紹介
- Axel Rauschmayer、ES 提案: RegExp 名前付きキャプチャ グループ: 名前付きグループ マッチングの概要
- Mathias Bynens、ECMAScript 正規表現がより良くなっている!: ES2018 で追加された複数の正規表現の紹介
価値
- Nicolas Bevacqua、[ES6 の数値改善の詳細](http://ponyfoo.com/articles/es6-number-improvements-in- Depth)
- Axel Rauschmayer、ES 提案: 任意精度の整数
- Mathias Bynens、BigInt: JavaScript における任意精度の整数
配列
- Axel Rauschmayer、ECMAScript 6 の新しい配列メソッド: ES6 の新しい配列メソッドの包括的な紹介
- TC39、Array.prototype.includes: 配列のincludesメソッドの仕様
- Axel Rauschmayer、ECMAScript 6: 配列の穴: 配列の穴の問題
関数
- Nicholas C. Zakas、[ECMAScript 6 アロー関数を理解する](http://www.nczonline.net/blog/2013/09/10/ Understanding-ecmascript-6-arrow-functions/)
- Jack Franklin、Real Life ES6 - アロー関数
- Axel Rauschmayer、ECMAScript 6 での必須パラメータの処理
- Dmitry Soshnikov、ES6 Notes: パラメータのデフォルト値: パラメータのデフォルト値の紹介
- Ragan Wald、ES6 の構造化と再帰: 残りのパラメーターとスプレッド演算子の詳細な紹介
- Axel Rauschmayer、ES6 の関数の名前: 関数の name 属性の詳細な紹介
- Kyle Simpson、Arrow This: アロー関数には独自の this がありません。
- Derick Bailey、[ES6 アロー関数は本当に JavaScript の「これ」を解決しますか?](http://derickbailey.com/2015/09/28/do-es6-arrow-functions-really-solve-this-in-javascript /): このポインタを処理するにはアロー関数を使用します。十分に注意する必要があります。
- Mark McDonnell、関数型 JavaScript プログラミングにおける再帰について: 末尾再帰最適化を自分で実装する方法
- Nicholas C. Zakas、おそらく知らない ECMAScript 2016 の変更 /): パラメーターのデフォルト値を使用する場合、関数内で厳密モードを明示的にオンにすることはできません。
- Axel Rauschmayer、ES 提案: オプションのキャッチ バインディング
- Cynthia Lee、[ES6 アロー関数を使用する必要がある場合 — そして、使用すべきでない場合](https://medium.freecodecamp.org/when-and-why-you-Should-use-es6-arrow-functions-and -when-you-Shouldnt-3d851d7f0b26): アロー関数がいつ適用されるかを議論します
- Eric Elliott、これは何ですか?: この内側の矢印関数は説明しています。
物体
- Addy Osmani、Object.observe() によるデータ バインディング革命: Object.observe() の概念の紹介
- Sella Rafaeli、Native JavaScript Data-Binding: Object.observe メソッドを使用してデータ オブジェクトと DOM オブジェクトの双方向バインディングを実現する方法
- Axel Rauschmayer、ECMAScript 6 の
__proto__
- Axel Rauschmayer、ECMAScript 6 の列挙可能性
- Axel Rauschmayer、ES 提案: Object.getOwnPropertyDescriptors()
- TC39、Object.getOwnPropertyDescriptors プロポーザル
- David Titarenco、スプレッド構文が JavaScript を破壊する方法: スプレッド演算子に関するいくつかの不合理な点
記号
- Axel Rauschmayer、ECMAScript 6 のシンボル: シンボルの概要
- MDN、シンボル: シンボル タイプの詳細な紹介
- Jason Orendorff、[ES6 の詳細: シンボル](https://hacks.mozilla.org/2015/06/es6-in- Depth-symbols/)
- Keith Cirkel、ES6 のメタプログラミング: シンボルとその優れた理由: シンボルの詳細な紹介
- Axel Rauschmayer、よく知られたシンボルを使用した ES6 のカスタマイズ
- Derick Bailey、ES6 シンボルを使用した Node.js での真のシングルトンの作成 -記号/)
- Das Surma、Web 仕様の読み方パート IIa – または: ECMAScript シンボル: シンボル仕様の紹介
セットとマップ
- Mozilla Developer Network、WeakSet: WeakSet データ構造の紹介
- Dwayne Charrington、ES6 の Weakmaps とは?: WeakMap データ構造の概要
- Axel Rauschmayer、ECMAScript 6: マップとセット: セット構造とマップ構造の詳細な紹介
- Jason Orendorff、[ES6 In Depth: Collections](https://hacks.mozilla.org/2015/06/es6-in- Depth-collections/): セットとマップの構造の設計アイデア
- Axel Rauschmayer、ES6 マップと JSON 間の変換: マップと他のデータ構造間の変換方法
プロキシとリフレクト
- Nicholas C. Zakas、ES6 プロキシを使用した防御オブジェクトの作成
- Axel Rauschmayer、ECMAScript 6 プロキシを使用したメタ プログラミング: プロキシの詳細な説明
- Daniel Zautner、プロキシを使用した JavaScript のメタプログラミング: プロキシを使用したメタプログラミングの実装
- Tom Van Cutsem、Harmony-reflect: Reflect オブジェクトの設計目的
- Tom Van Cutsem、Proxy Traps: プロキシ インターセプト操作のリスト
- Tom Van Cutsem、Reflect API
- Tom Van Cutsem、プロキシ ハンドラー API
- Nicolas Bevacqua、[ES6 プロキシの詳細](http://ponyfoo.com/articles/es6-proxies-in- Depth)
- Nicolas Bevacqua、[ES6 プロキシ トラップの詳細](http://ponyfoo.com/articles/es6-proxy-traps-in- Depth)
- Nicolas Bevacqua、[ES6 プロキシ トラップの詳細](http://ponyfoo.com/articles/more-es6-proxy-traps-in- Depth)
- Axel Rauschmayer、落とし穴: すべてのオブジェクトをプロキシによって透過的にラップできるわけではありません
- Bertalan Miklos、JavaScript フレームワークの作成 - ES6 プロキシによるデータ バインディング: プロキシを使用したオブザーバーの実装モデル
- Keith Cirkel、ES6 のメタプログラミング: パート 2 - Reflect: Reflect API の詳細な紹介
Promise オブジェクト
- Jake Archibald、JavaScript の約束: そことまた戻ってくる
- Jake Archibald、タスク、マイクロタスク、キュー、スケジュール
- チルダ、rsvp.js
- Sandeep Panda、JavaScript Promises の概要: ES6 Promises の概要
- Dave Achley、ES6 Promises: Promise 構文の概要
- Axel Rauschmayer、ECMAScript 6 Promise (2/2): the API: ES6 Promise の仕様と使用法の詳細な紹介
- Jack Franklin、JavaScript での約束を受け入れる: catch メソッドの例
- Ronald Chen、Promise Hell から抜け出す方法:
Promise.all の使用方法
メソッドのいくつかの良い例 - Jordan Harband、proposal-promise-try: Promise.try() メソッドの提案
- Sven Slootweg、[Promise.try とは何ですか? また、それが重要なのはなぜですか?](http://cryto.net/~joepie91/blog/2016/05/11/what-is-promise-try-and-why- dos-it-matter/): Promise.try() メソッドの利点
- Yehuda Katz、TC39: 約束、約束: Promise.try() の使用
イテレータ
- Mozilla Developer Network、イテレーターとジェネレーター
- Mozilla Developer Network、イテレーター プロトコル
- Jason Orendorff、[ES6 の詳細: イテレーターと for-of ループ](https://hacks.mozilla.org/2015/04/es6-in- Depth-iterators-and-the-for-of-loop/) ): トラバーサーと for...of ループの概要
- Axel Rauschmayer、ECMAScript 6 のイテレーターとジェネレーター: イテレーターとジェネレーターの設計目的について説明しています。
- Axel Rauschmayer、ECMAScript 6 のイテラブルとイテレーター: イテレーターの詳細な紹介
- Kyle Simpson、Iterating ES6 Numbers: 数値オブジェクトへのイテレータのデプロイ
ジェネレーター
- Matt Baker、ES6 ジェネレーターによるコールバックの置き換え
- Steven Sanderson、Koa および JavaScript ジェネレーターの実験
- jmar777、ジェネレーターに関する大きな問題は何ですか?
- Marc Harter、Node.js のジェネレーター: 一般的な誤解と 3 つの優れた使用例: ジェネレーターについての説明機能の内容
- StackOverflow、[ES6 yield : 最初の呼び出し next() の引数はどうなりますか?](http://stackoverflow.com/questions/20977379/es6-yield-what-happens-to-the-arguments-of- the-first-call-next): next メソッドは、初めてパラメーターとともに使用することはできません。
- Kyle Simpson、ES6 ジェネレーター: コンプリート シリーズ: ジェネレーターを浅いものから深いものまで探求する一連の記事、合計 4 つの記事
- Gajus Kuizinas、JavaScript ジェネレーターの決定版ガイド: ジェネレーターの包括的な紹介
- Jan Krems、ジェネレーターは配列のようなもの: ジェネレーターがデータ構造として扱えることについて説明しています。
- Harold Cooper、JavaScript のコルーチン イベント ループ: ジェネレーターはステート マシンの実装に使用されます。
- Ruslan Ismagilov、learn-generators: プログラミング演習、合計 6 つの質問
- Steven Sanderson、Koa および JavaScript ジェネレーターの実験: を使用したジェネレーターの概要Koa フレームワークの例
- Mahdi Dibaiee、ES7 Array and Generator comprehensions: ES7 のジェネレーター導出
- Nicolas Bevacqua、[ES6 ジェネレーターの詳細](http://ponyfoo.com/articles/es6-generators-in- Depth)
- Axel Rauschmayer、ES6 ジェネレーターの詳細: ジェネレーター仕様の詳細な説明
- Derick Bailey、ES6 ジェネレーターを使用して階層データ反復を短絡する : for...of ループを使用して、所定の操作ステップを完了します
非同期操作と非同期関数
- Luke Hoban、Async Functions for ECMAScript: Async 関数の設計思想と、Promise 関数および Generator 関数との関係
- Jafar Husain、ES7 用非同期ジェネレーター: 非同期関数の詳細な説明
- Nolan Lawson、ES7 で非同期の獣を飼いならす: 非同期関数の簡単な例の説明
- Jafar Husain、Async Generators: 非同期とジェネレーターの混合に関する議論
- Daniel Brain、async/await を使い始める前に Promise を理解する: async について議論しています/await と Promise の関係
- Jake Archibald、非同期関数 - Promise をフレンドリーにする
- Axel Rauschmayer、ES 提案: 非同期反復: 非同期反復の詳細な紹介
- Dima Grossman、JavaScript で try-catch ブロックを使用せずに非同期待機を記述する方法 /): try/catch 以外の非同期関数内のエラーをキャッチするメソッド
- Mostafa Gaafa、JavaScript の Async/Await が約束を吹き飛ばす 6 つの理由: 非同期関数6つのメリット
- Mathias Bynens、非同期スタック トレース: await が Promise#then() に勝る理由: 非同期関数はエラー スタックを保持できる
クラス
- Sebastian Porto、ES6 クラスと JavaScript プロトタイプ: ES6 クラスの作成方法と ES5 プロトタイプの作成方法の比較
- Jack Franklin、ES6 クラスの概要: ES6 クラスの概要
- Axel Rauschmayer、ECMAScript 6: クラス以外の新しい OOP 機能
- Axel Rauschmayer、ECMAScript 6 のクラス (最終セマンティクス): クラス構文と設計アイデアの分析の詳細な紹介
- Eric Faust、[ES6 In Depth: Subclassing](https://hacks.mozilla.org/2015/08/es6-in- Depth-subclassing/): クラス構文の詳細な紹介
- Nicolás Bevacqua、クラス インスタンス オブジェクトへのメソッドのバインド: これをクラスのインスタンスにバインドする方法
- Jamie Kyle、JavaScript の新しい #private クラス フィールド: プライベート プロパティの概要。
- Mathias Bynens、パブリック クラス フィールドとプライベート クラス フィールド: インスタンス属性を記述する新しい方法の紹介。
デコレータ
- Maximiliano Fierro、宣言型と命令型: デコレータとミックスインの紹介
- Justin Fagnani、JavaScript クラスを使用した "Real" Mixins: クラス継承を使用した Mixins の実装
- Addy Osmani、ES2016 デコレーターの探索: デコレーターの詳細な紹介
- Sebastian McKenzie、関数に対してもデコレータを許可する: デコレータを関数に使用できない理由
- Maximiliano Fierro、ES7 デコレーターによるトレイト: トレイトの使用法の概要
- Jonathan Creamer: ES2016 デコレーターを使用してイベント バスで公開する: デコレーターを使用して自動公開を実現します。イベント
モジュール
- Jack Franklin、JavaScript Modules the ES6 Way: ES6 モジュールの概要
- Axel Rauschmayer、ECMAScript 6 モジュール: 最終構文: ES6 モジュールの概要と CommonJS 仕様との詳細な比較
- Dave Herman、静的モジュール解像度: ES6 モジュールの静的設計アイデア
- Jason Orendorff、[ES6 In Depth: Modules](https://hacks.mozilla.org/2015/08/es6-in- Depth-modules/): ES6 モジュール設計アイデアの紹介
- Ben Newman、インポートとエクスポートの重要性: ES6 モジュールの設計アイデア
- ESDiscuss、「エクスポートのデフォルト var a = 1; はなぜ無効な構文ですか?」
- Bradley Meck、ES6 モジュールの相互運用性: CommonJS モジュールをロードするために Node が ES6 構文を処理する方法の紹介
- Axel Rauschmayer、トランスパイルされた ES モジュールをより仕様に準拠させる: ES6 モジュールを CommonJS モジュールにコンパイルするための詳細な紹介
- Axel Rauschmayer、ES 提案: import() – ES モジュールを動的にインポート: import() の使用法
- ノード EPS、ES モジュールの相互運用性: ES6 モジュールのノードの処理仕様
- Dan Fabulich、CommonJS と ES モジュールがうまく調和できない理由 ): ES6 モジュールの Node.js 処理
バイナリ配列
- Ilmari Heikkinen、型付き配列: ブラウザー内のバイナリ データ
- Khronos、型付き配列の仕様
- Ian Elliot、JavaScript での BMP ファイルの読み取り
- Renato Mangini、ArrayBuffer を String に、または String から変換する方法
- Axel Rauschmayer、ECMAScript 6 の型付き配列
- Axel Rauschmayer、ES 提案: 共有メモリとアトミックス
- Lin Clark、Atomics を使用した SharedArrayBuffers の競合状態の回避: Atomics オブジェクトの使用シナリオの説明
- Lars T Hansen、共有メモリ - 簡単なチュートリアル
- James Milner、SharedArrayBuffers とアトミックスの帰還
SIMD
- TC39、SIMD.js ステージ 2
- MDN、SIMD
- TC39、ECMAScript SIMD
- Axel Rauschmayer、JavaScript が SIMD のサポートを獲得
道具
- Babel、Babel Handbook: Babel の使用法の概要
- Google、traceur-compiler: Traceur コンパイラ
- Casper Beyer、ECMAScript 6 の機能とツール
- Stoyan Stefanov、jstransform を使用して ES6 を今日書く
- ES6 モジュール ローダー、ES6 Module Loader Polyfill: ES6 モジュールをブラウザーおよびnode.js にロードするためのライブラリ。ドキュメントには ES6 モジュールの詳細が記載されています。説明する
- Paul Miller、es6-shim: 一部の ES6 機能をエミュレートする古いブラウザ用の shim ライブラリ (shim)
- army8735、JavaScript Downcast: 国内の ES6 から ES5 へのトランスコーダ
- esnext、ES6 Module Transpiler: ES6 モジュールを ES5 コードに変換するための、node.js に基づくコマンド ライン ツール。
- Sebastian McKenzie、BabelJS: ES6 トランスパイラー
- SystemJS、SystemJS: AMD、CJS、および ES6 モジュールをブラウザにロードするための shim ライブラリ
- Modernizr、HTML5 Cross Browser Polyfills: ES6 シム ライブラリ リスト
- Facebook、regenerator: Generator 関数を ES5 トランスコーダに変換
作者: wangdoc
アドレス: https://wangdoc.com/
ライセンス: クリエイティブ・コモンズ 3.0