このページでは、ECMAScriptの次期バージョン(別名ES)のすべての標準化機能について説明します。
ES2022
- プライベートフィールド – クラスでプライベートフィールドを定義する方法を学習します。
- プライベートメソッド – クラスでプライベートメソッドを定義する方法を示します。
- トップレベルawait – トップレベルawaitモジュールとその使用例について説明します。
- Array.prototype.at()メソッド – Array.prototype.at()メソッドを使用して配列要素にアクセスする方法を説明します。
ES2021
- String.prototype.replaceAll() – パターンに一致する部分文字列のすべてを新しい部分文字列に置き換えます。
- 論理代入演算子 –
||=
、&&=
、??=
を含む論理代入演算子について説明します。 - 数値セパレータ – アンダーバーを数値セパレータとして使用して、数値を読みやすくする方法を示します。
- Promise.any() – JavaScriptの
Promise.any()
メソッドを使用して、最初に解決されたPromise
を返す方法を学習します。
ES2020
- Nullish合体演算子 (
??
) – 2つのオペランドを受け取り、左側のオペランドがnull
またはundefined
の場合、右側のオペランドを返します。 - オプションチェーン演算子 (
?.
) – チェーン接続されたオブジェクトの深い箇所に位置するプロパティにアクセスする方法を簡素化します。チェーン内の各参照がnull
またはundefined
かどうかを確認する必要はありません。 - Promise.allSettled() – Promiseのリストを受け取り、入力Promiseによって解決または拒否された値の配列を解決する新しいPromiseを返します。
- 動的インポート – 関数のようなオブジェクト
import()
を使用してモジュールを動的にインポートする方法を示します。 - BigInt –
Number
型でJavaScriptが確実に表現できる最大数である253 – 1よりも大きい整数を表現できる新しいプリミティブ型を紹介します。 - globalThis – 環境全体でグローバルオブジェクトにアクセスするための標準的な方法を提供します。
ES2019
- Array.prototype.flat() – 指定された深さまで配列を再帰的に平坦化します。
- Array.prototype.flatMap() – 各要素に対してマッピング関数を実行し、結果を平坦化します。
map()
メソッドに続いてflat()
メソッドを実行する組み合わせです。 - Object.fromEntries() – キーと値のペアのリストをオブジェクトに変換します。
- オプションのcatchバインディング – バインディングが使用されない場合、catchバインディングを省略します。
- String.prototype.trimStart() – 文字列の先頭の空白文字を削除します。
- String.prototype.trimEnd() – 文字列の末尾の空白文字を削除します。
ES2018
- オブジェクトスプレッド演算子 – オブジェクトにスプレッド演算子(
...
)を使用します。 - Promise.prototype.finally() – Promiseが解決されたときに、結果に関係なくコードを実行します。
- 非同期イテレータ – 非同期イテレータを使用して、非同期データソースに順次アクセスする方法を学習します。
- 非同期ジェネレータ – 非同期ジェネレータの作成方法を示します。
ES2017
- 文字列のパディング – 文字列を特定の長さまで別の文字列でパディングできる2つのメソッド:
padStart()
とpadEnd()
の使い方を示します。 - Object.values() – オブジェクトの列挙可能な固有プロパティの値を配列として返します。
- Object.entries() – オブジェクトの列挙可能な固有の文字列キーのプロパティ
[key, value]
ペアを返します。 - JavaScript async/await – 非同期コードをより明確な構文で記述します。
ES2016
- べき乗演算子 –
Math.pow()
メソッドと同様に、底を指数乗算できるべき乗演算子(**)を紹介します。 - Array includes() – 要素が配列内にあるかどうかを確認できます。
ESバージョン
次の表は、ECMAScriptのエディションと正式名称を示しています。
エディション | 正式名称 | 公開日 |
---|---|---|
ES12 | ES2021 | 2020年6月 |
ES11 | ES2020 | 2020年6月 |
ES10 | ES2019 | 2019年夏 |
ES9 | ES2018 | 2018年6月 |
ES8 | ES2017 | 2017年6月 |
ES7 | ES2016 | 2016年6月 |
ES6 | ES2015 | 2015年6月 |
ES5.1 | ES5.1 | 2011年6月 |
ES5 | ES5 | 2009年12月 |
ES4 | ES4 | 廃止 |
ES3 | ES3 | 1999年12月 |
ES2 | ES2 | 1998年6月 |
ES1 | ES1 | 1997年6月 |