ECMAScript2016(ES7)がJavaScriptに追加する新機能を紹介する

By Sanket Meghani

ECMAScript2015(ES6としても知られています)がリリースされて以来、膨大な新機能が導入されています。 それらには、矢印関数、セット、マップ、クラス、および破壊などが含まれます。 多くの点で、ES2015はJavaScriptの新しいバージョンを学ぶようなものです。

Ecma技術委員会39は、ECMA仕様を管理します。 彼らは2015年から毎年ECMAScriptの新しいバージョンをリリースすることに決めました。 毎年の更新は、ES6のようなこれ以上の大きなリリースを意味しません。

ECMAScript2016では、2つの新機能のみが導入されました:

  • 配列。プロトタイプ。インクルード()
  • べき乗演算子

配列。プロトタイプ。含まれています()

Array.prototype.includes() 配列にargumentとして渡されたvalueがあるかどうかをチェックします。 配列にvalueが含まれている場合はtrueを返し、それ以外の場合はfalseを返します。

以前は、指定された配列に要素が含まれているかどうかを確認するためにArray.prototype.indexOf()を使用する必要がありました。

let numbers = ;
if(numbers.indexOf(2) !== -1) { console.log('Array contains value');}

ECMA2016を使うと、私達は書いてもいいです:

if(numbers.includes(2)) { console.log('Array contains value');}

Array.prototype.includes() NaNArray.prototype.indexOf()よりも優れています。 配列にNaNが含まれている場合、indexOf()NaNの検索中に正しいインデックスを返しません。

Array.prototype.includes()は、NaNを検索するときに正しい値を返します。

NaNは、JavaScriptグローバルオブジェクトのプロパティであり、数値ではない値を表します。 NaNを別の値と比較すると、既知の癖があります。 これらはArray.prototype.includes()で対処されていますが、Array.protoype.indexOfでは対処されていません。

let numbers = ;
console.log(numbers.indexOf(NaN)); //Prints -1console.log(numbers.includes(NaN)); //Prints true

べき乗演算子

JavaScriptはすでに+, -, *などの多くの算術演算子をサポートしています。

ECMAScript2016では累乗演算子**が導入されました。

それはMath.pow()と同じ目的を持っています。 最初の引数を2番目の引数の累乗に戻します。

let base = 3;let exponent = 4;let result = base**exponent;
console.log(result); //81

おわりに

ECMA2016によって導入された新機能は、既存の機能に代わる便利な選択肢を提供します。

今後は、今年6月にECMA2017が確定しました。 新しい機能には、async/awaitSharedArrayBuffer、およびObject.prototypeへのいくつかの便利なメソッドが含まれます。

コメントを残す

メールアドレスが公開されることはありません。