6 Punkte von GN⁺ 2025-06-30 | 1 Kommentare | Auf WhatsApp teilen
  • ECMAScript 2025 wurde am 25. Juni 2025 als offizieller Standard verabschiedet und bringt zahlreiche neue Funktionen mit
  • Import attributes und JSON-Module verbessern den Import nicht-javanischer Ressourcen
  • Iterator helper methods steigern die Effizienz bei der Verarbeitung großer Datenmengen und bei verschiedensten Iterationsaufgaben
  • Für zentrale Built-in-Objekte wie Set und RegExp wurden zahlreiche neue Methoden hinzugefügt, was die Nutzbarkeit verbessert
  • Unterstützung für 16-Bit-Gleitkommazahlen (float16) erweitert Datenverarbeitung, Performance und Ausdrucksstärke

Offizielle Verabschiedung von ECMAScript 2025

  • Am 25. Juni 2025 wurde ECMAScript 2025 auf der 129. Generalversammlung von Ecma International als offizieller Standard verabschiedet

Wichtige neue Funktionen

Import attributes und JSON-Module

  • Import attributes sind eine Syntax, mit der sich für nicht-JavaScript-Artefakte (zu importierende Ressourcen) Eigenschaften wie der Typ angeben lassen
  • JSON-Module werden erstmals offiziell unterstützt; JSON-Daten lassen sich damit bequem in der Form import configData from './data.json' with { type: 'json' }; laden
  • Auch bei dynamischen Imports (import()-Aufrufen) lassen sich dieselben Attribute angeben

Iterator helper methods

  • Es wurden verschiedene Helper-Methoden eingeführt, die Array-Methoden ähneln, aber speziell auf iterator zugeschnitten sind
    • bestehende Methoden wie filter, map, flatMap, some, every, find, reduce, forEach
    • inklusive neuer iterator-spezifischer Methoden wie drop, take, toArray
  • Direkt nutzbar mit allen iterierbaren Objekten wie Set und Map
  • Es werden keine Zwischen-Arrays erzeugt; Daten werden nur in dem Umfang sequenziell verarbeitet, wie sie benötigt werden, was besonders für große Datenmengen effektiv ist

Erweiterungen für Set-Methoden

  • Methoden für Vereinigung, Schnittmenge, Differenz und symmetrische Differenz wurden hinzugefügt
    • Set.prototype.union(other), intersection(other), difference(other), symmetricDifference(other)
  • Methoden zur Prüfung von Teilmenge/** Obermenge**/** Disjunktheit** werden bereitgestellt
    • isSubsetOf(other), isSupersetOf(other), isDisjointFrom(other)

Verbesserungen bei regulären Ausdrücken

RegExp.escape()

  • RegExp.escape() wurde eingeführt, um beliebige Strings automatisch zu maskieren, damit sie sicher in regulären Ausdrücken verwendet werden können

Inline-Flags innerhalb des Musters

  • Für einzelne Teilmuster in regulären Ausdrücken können nun individuelle Flags (i, u usw.) angewendet werden
    • Beispiel: /^x(?i:HELLO)x$/ gleicht nur den Teil HELLO ohne Beachtung der Groß-/Kleinschreibung ab

Unterstützung für Capture-Gruppen mit doppelten Namen

  • In verschiedenen Alternativen (Branches) eines regulären Ausdrucks können Capture-Gruppen mit demselben Namen verwendet werden
    • Beispiel: /(?<chars>a+)|(?<chars>b+)/v

Promise.try()

  • Promise.try() wurde eingeführt, um die gemischte Verarbeitung von synchronem und asynchronem Code in einer einzigen Promise-Kette zu starten
    • Bisher war die Behandlung synchroner Ausnahmen umständlich, jetzt ist dies deutlich einfacher möglich

Unterstützung für 16-Bit-Gleitkommazahlen (float16)

  • Mit Math.f16round() ist Rundung auf 16-Bit-Gleitkommazahlen möglich
  • Für TypedArray wurde der Typ Float16Array hinzugefügt
  • In DataView wurden die Methoden getFloat16() und setFloat16() eingeführt

Referenzmaterial und kostenloses Buch

  • Das kostenlose Online-Buch „Exploring JavaScript (ES2025 Edition)“ ist verfügbar
    • Es erklärt die Geschichte und Entwicklung von JavaScript sowie die neuen ECMAScript-Funktionen im Detail
    • Zu den wichtigsten neuen Funktionen bietet es praktische Beispiele und Erläuterungen

1 Kommentare

 
smboy86 2025-06-30

Im letzten Projekt wusste ich nicht, warum das Laden von JSON nicht funktioniert hat.
Es wurde also ursprünglich gar nicht unterstützt.. krass