ECMAScript 2024: Neue Version des JavaScript-Standards veröffentlicht
Der neue Standard erlaubt einen flexibleren Umgang mit ArrayBuffer sowie SharedArrayBuffer und erleichtert die Arbeit mit Promises.

(Bild: Trismegist san/Shutterstock.com)
Ecma International hat ECMAScript 2024 freigegeben. Der JavaScript-Standard setzt in seiner fünfzehnten Ausgabe zahlreiche Proposals um, die sich teils seit 2015 in der Mache befanden. Unter anderem ist nun die Größenänderung von ArrayBuffer
sowie SharedArrayBuffer
möglich und eine Vereinfachung im Umgang mit Promises macht einen Workaround überflüssig.
Mehr Flexibilität für ArrayBuffer und SharedArrayBuffer
ArrayBuffer
-Konstruktoren können nun eine zusätzliche Maximallänge annehmen, was ein Vergrößern und Verkleinern der Buffer ermöglicht. Auf ähnliche Weise wurde SharedArrayBuffer
erweitert, um ebenfalls eine zusätzliche Maximallänge und dadurch ein Vergrößern der Buffer zu erlauben. Das Verkleinern ist hier nicht erlaubt, weil es keine gute Idee ist, geteilten Speicher zu verkleinern, wie es im Proposal auf GitHub heißt.
Laut dem Proposal war das bisherige Vorgehen – einen neuen Buffer zu allokieren und zu kopieren – ineffizienter und fragmentierte zudem den Adressraum bei 32-Bit-Systemen.
Erleichtertes Arbeiten mit Promises ohne Boilerplate-Code
FĂĽr Promises steht die neue Methode Promise.withResolvers
bereit, die Entwicklerinnen und Entwicklern die Arbeit erleichtern soll. Bisher war ein Workaround erforderlich, wenn sie das Auflösungs- und Ablehnungsverhalten (Resolution und Rejection) eines Promise nach dessen Instanziierung konfigurieren wollten. Dabei entstand Boilerplate-Code, den Entwickler häufig neu schreiben mussten.
Die neue statische Methode withResolvers
soll diesen Boilerplate-Code nun ĂĽberflĂĽssig machen, da sie ein Promise mitsamt seiner Resolution- und Rejection-Funktionen ausgibt:
const { promise, resolve, reject } = Promise.withResolvers();​
Daneben hat auch das Flag v
für reguläre Ausdrücke den Weg in ECMAScript 2024 gefunden. Es dient dem Erstellen von regulären Ausdrücken mit weitergehenden Funktionen für das Arbeiten mit String-Sets. Für das Aggregieren von Daten stehen nun die Methoden Object.groupBy
sowie Map.groupBy
bereit und die Atomics.waitAsync
-Methode erlaubt das asynchrone Warten auf eine Ă„nderung in geteiltem Speicher.
Details zu ECMAScript 2024 und laufenden Proposals
Die Proposals, die im neuen Standard enthalten sind, haben Stufe 4 im Proposal-Prozess erreicht und lassen sich auf GitHub einsehen. Alle weiteren ECMAScript-Vorschläge in unterschiedlichen Stufen sind dort ebenfalls zu finden. Anfang 2024 hat TC39 – das technische Komitee für die Standardisierung von JavaScript – die neue Stufe 2,7 eingeführt, die der ehemaligen Stufe 3 entspricht.
Weitere Informationen zum neuen Standard sind auf der Ecma-International-Website verfĂĽgbar.
(mai)