TECH I.S.

ECMAScript 2018

JavaScriptのバージョン番号

古いJSバージョンは番号で命名されています:ES5(2009)およびES6(2015)。

2016年から、バージョンは年ごとに名前が付けられます:ECMAScript2016、2017、2018、2019、...

ECMAScript2018の新機能

この章では、ECMAScript2018の新機能を紹介します。


JavaScript非同期反復

ECMAScript2018では、非同期イテレータとイテラブルが追加されました。

非同期イテラブルでは、for/ofループでawaitキーワードを使用できます。

for await () {}

JavaScript非同期反復は、2020年1月以降、最新のすべてのブラウザーでサポートされています。


Chrome63 Edge79 Firefox57 Safari11 Opera50
2017年12月 2020年1月 2017年11月 2017年9月 2018年1月


JavaScript Promise.finally

ECMAScript2018は、Promise.finallyを使用して Promiseオブジェクトの完全な実装を完成させます。

let myPromise = new Promise(); myPromise.then(); myPromise.catch(); myPromise.finally();
Promise.finallyは、2018年11月以降、最新のすべてのブラウザーでサポートされています。


Chrome63 Edge18 Firefox58 Safari11.1 Opera50
2017年12月 2018年11月 2018年1月 2018年3月 2018年1月


JavaScriptオブジェクトの残りのプロパティ

ECMAScript2018は残りのプロパティを追加しました。

これにより、オブジェクトを分解し、残り物を新しいオブジェクトに集めることができます。

let { x, y, ...z } = { x: 1, y: 2, a: 3, b: 4 }; x; // 1 y; // 2 z; // { a: 3, b: 4 }

オブジェクトの残りのプロパティは、2020年1月以降、すべての最新ブラウザーでサポートされています。


Chrome60 Edge79 Firefox55 Safari11.1 Opera47
2017年7月 2020年1月 2017年8月 2018年3月 2017年8月


新しいJavaScriptRegExp機能

ECMAScript2018には、4つの新しいRegExp機能が追加されました。

  • Unicodeプロパティのエスケープ(\p{...})
  • 後読みアサーション(?<= )および(?<! )
  • 名前付きキャプチャグループ
  • s(dotAll)フラグ

新しいRegExp機能は、2020年6月以降、最新のすべてのブラウザーでサポートされています。


Chrome64 Edge79 Firefox78 Safari12 Opera51
2018年1月 2020年1月 2020年6月 2018年9月 2018年2月


JavaScriptスレッド

JavaScriptでは、Web Workers APIを使用してスレッドを作成します。

ワーカースレッドは、メインプログラムが実行を継続できるように、バックグラウンドでコードを実行するために使用されます。

ワーカースレッドはメインプログラムと同時に実行されます。プログラムのさまざまな部分を同時に実行すると、時間を節約できます。

JavaScript共有メモリ

共有メモリは、スレッド(プログラムのさまざまな部分)が同じメモリ内の同じデータにアクセスして更新できるようにする機能です。

スレッド間でデータを渡す代わりに、データが保存されるメモリを指すSharedArrayBufferオブジェクトを渡すことができます。

SharedArrayBuffer

SharedArrayBufferオブジェクトは、ArrayBuffer オブジェクトと同様の固定長の生のバイナリデータバッファーを表します。




プログラミング学習を加速させる

プログラミングをプロの講師に教えてもらいませんか。

テックアイエスのプログラミングスクールは初心者も大歓迎です。年齢制限もありません。転職・副業に強く、挫折させない手厚いサポートで稼ぐ力を身につけましょう!

スクールの詳細