ECMAScript 2016

JavaScript の命名規約は ES1、ES2、ES3、ES5、ES6 から始まります。

しかし、ECMAScript 2016 と 2017 は ES7 と ES8 と呼ばれませんでした。

2016年以降、新しいバージョンは年を名前としています(ECMAScript 2016/2017/2018)。

ECMAScript 2016 の新しい機能

本章では ECMAScript 2016 の新しい機能を紹介します:

  • JavaScript 乗 (**)
  • JavaScript 乗割当き (**)
  • JavaScript Array.prototype.includes

乗演算子

乗演算子 (**) 第1操作数を第2操作数の乗に上げます。

インスタンス

let x = 5;
let z = x ** 2;          // 結果は: 25

自分で試してみる

x ** y 以下に生成されます与 Math.pow(x, y) 同じ結果:

インスタンス

let x = 5;
let z = Math.pow(x,2);   // 結果は: 25

自分で試してみる

乗割当き

乗割当き演算子 (**=) 変数の値を右操作数の乗に上げます。

インスタンス

let x = 5;
x **= 2; // 結果は 25

自分で試してみる

Chrome 52 と Edge 14 は指数演算子を完全にサポートする最初のブラウザです:

Chrome IE Firefox Safari Opera
Chrome 52 Edge 14 Firefox 52 Safari 10.1 Opera 39
2016 年 7 月 2016 年 8 月 2017 年 3 月 2017 年 3 月 2016 年 8 月

JavaScript Array.includes()

ECMAScript 2016 では Array.prototype.includes 配列を導入します。これにより、要素が配列に存在するかどうかを確認できます:

インスタンス

const fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.includes("Mango"); // 真です

自分で試してみる

すべての現代ブラウザは Array.prototype.includes をサポートしています:

Chrome IE Firefox Safari Opera
Chrome 47 Edge 14 Firefox 43 Safari 9 Opera 34
2015 年 12 月 2016 年 8 月 2015 年 12 月 2015 年 10 月 2015 年 12 月