Einführung in die neuen Funktionen, die ECMAScript 2016 (ES7) JavaScript hinzufügt

von Sanket Meghani

Seit ECMAScript 2015 (auch bekannt als ES6) veröffentlicht wurde, hat es eine Vielzahl neuer Funktionen eingeführt. Dazu gehören Pfeilfunktionen, Sets, Karten, Klassen und Destrukturierung und vieles mehr. In vielerlei Hinsicht ist ES2015 fast wie das Erlernen einer neuen Version von JavaScript.

Ecma Technical Committee 39 regelt die ECMA-Spezifikation. Sie beschlossen, ab 2015 jedes Jahr eine neue Version von ECMAScript zu veröffentlichen. Ein jährliches Update bedeutet keine großen Releases wie ES6 mehr.

ECMAScript 2016 führte nur zwei neue Funktionen ein:

  • Array.Prototyp.includes()
  • Potenzierungsoperator

Array.Prototyp.beinhaltet()

Array.prototype.includes() überprüft das Array auf value, das als argument übergeben wurde. Es wird true zurückgegeben, wenn das Array value enthält, andernfalls false.

Vorher mussten wir Array.prototype.indexOf() verwenden, um zu überprüfen, ob das angegebene Array ein Element enthält oder nicht.

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

Mit ECMA2016 können wir schreiben:

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

Array.prototype.includes() behandelt NaN besser als Array.prototype.indexOf(). Wenn das Array NaN enthält, gibt indexOf() bei der Suche nach NaN keinen korrekten Index zurück.

Array.prototype.includes() gibt den korrekten Wert zurück, wenn nach NaN gesucht wird.

NaN ist eine Eigenschaft des globalen JavaScript-Objekts und stellt einen Wert dar, der keine Zahl ist. Es gibt bekannte Macken beim Vergleich von NaN mit einem anderen Wert. Diese werden in Array.prototype.includes() angesprochen, aber nicht in Array.protoype.indexOf.

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

Potenzierungsoperator

JavaScript unterstützt bereits viele arithmetische Operatoren wie +, -, * und mehr.

ECMAScript 2016 führte den Potenzierungsoperator ** ein.

Es hat den gleichen Zweck wie Math.pow(). Es gibt das erste Argument zurück, das auf die Potenz des zweiten Arguments angehoben wurde.

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

Fazit

Die von ECMA2016 eingeführten neuen Funktionen bieten praktische Alternativen zu bestehenden Funktionen.

Mit Blick auf die Zukunft wurde die ECMA2017 im Juni dieses Jahres abgeschlossen. Zu den neuen Funktionen gehören async/await, SharedArrayBuffer und einige nützliche Methoden zu Object.prototype.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.