ECMAScript-Roadmap: Neue JavaScript-Funktionen für 2019

ECMAScript 2019, die neueste Version der Spezifikation, die als Grundlage für JavaScript dient, wurde fertiggestellt. ECMA International genehmigte die Spezifikation im Juni.

Die neuen Funktionen, die in ECMAScript 2019 eingeführt wurden, umfassen Folgendes:

  • Symbol.prototype.description, eine Accessoreigenschaft, deren set accessorundefiniert ist. Seine get accessorFunktion führt folgende Schritte aus: Sei sdieser Wert, sei symsei ?thisSymbolValue(s)und kehre zurück sym. [[Description]]. Ziel dieser Funktion ist es, den [[Description]]internen Steckplatz eines Symbols direkt und nicht nur indirekt freizulegen Symbol.prototype.toString.
  • Änderungen an Function.prototype.toString. Es wurden Überarbeitungen vorgeschlagen, z. B. Implementierungen, die nicht erforderlich sind, um den Quelltext für alle mit ECMAScript-Code definierten Funktionen beizubehalten.
  • prototype.flatMap, eine allgemeine Array-Operation, die eine verschachtelte Array-Struktur verwendet und je nach Parameter eine oder mehrere Verschachtelungsebenen entfernt. Flat existiert in Array-ähnlichen Bibliotheken wie Lodash, was dazu geführt hat, dass Benutzer die gleiche Funktionalität in Vanille-JavaScript wünschen.
  • prototype.flatmapEine Karte, gefolgt von einer Wohnung, bietet eine leichte Bequemlichkeit und eine leichte Optimierung. Flatmap ist praktisch, da das Reduzieren und Zuordnen häufig im selben Vorgang nützlich ist. Dies ist auch eine Optimierung, da für die Zuordnung kein Array zugewiesen werden muss, um es beim Reduzieren zu verwerfen.
  • prototype.sort()Eine Methode, die die Elemente eines Arrays an Ort und Stelle sortiert und das Array zurückgibt, ist jetzt stabil.
  • Object.fromEntriesund bietet eine neue statische Methode zum Transformieren einer Liste von Schlüsselwertpaaren in ein Objekt.
  • String.prototype.trimStartund String.prototype.trimEnd. Der Grund für diese Überarbeitungen ist, dass alle wichtigen Motoren entsprechende trimLeftund trimRight-Funktionen ohne Standardspezifikation implementiert haben . Aus Gründen der Konsistenz mit padStart/padEnd, trimStart, trimEnd, trimLeft, und trimRightwerden als Aliase für Web - Kompatibilität vorgeschlagen.
  • Aktualisierungen zur JSON.stringifyAusgabe von wohlgeformtem UTF-16 (Unicode-Transformationsformat). Gegenwärtig könnten schlecht geformte Codeeinheiten für Ersatzcodepunkte ausgegeben werden.
  • Optionale catchBindung, mit der Entwickler eine catchBindung weglassen können , wenn die Bindung nicht verwendet wird.

Die vollständige ECMAScript 2019-Spezifikation kann online auf der Website von ECMA International eingesehen werden. Es kann auch heruntergeladen werden. Abgeschlossene ECMAScript-Ausgaben werden in der Regel jedes Jahr im Juni veröffentlicht, z. B. die letztjährige ECMAScript 2018-Spezifikation.