ECMAScript 2022, la prochaine mise à jour de la norme officielle de JavaScript, a été officiellement approuvée, avec capacités supplémentaires allant des champs de classe à une capacité Top-level await ou d’ « await au premier niveau ». La spécification ECMAScript 2022 a été approuvée par l'ECMA International le 22 juin. « Mais les fonctionnalités sont déjà disponibles dans la plupart des navigateurs », comme l’avait annoncé, en mars, Robert Palmer, coprésident du comité TC39 chargé de la gestion de la norme. « La disponibilité des fonctionnalités dans les moteurs JavaScript est plus importante pour les développeurs que leur introduction dans la spécification actuelle », avait aussi déclaré M. Palmer.

Parmi les prochaines fonctionnalités de ECMAScript 2022, on peut citer :

- Top-level await : elle permet d'utiliser le mot-clé await au premier niveau des modules.

- Des champs de classe, notamment des champs d'instance publics et privés, des champs statiques publics et privés, ainsi que des méthodes et des accesseurs d'instance privés.

- Des membres statiques au sein des classes, pour effectuer l'initialisation de l'évaluation par classe.

- La syntaxe #x in obj#x in obj, pour tester la présence de champs privés sur les objets.

- Les indices de correspondance des expressions régulières via le flag /d/d, qui offre des indices de début et de fin pour les sous-chaînes correspondantes.

- La propriété « cause d’erreur » des objets de type Error, qui permet d'enregistrer une chaîne de causalité dans les erreurs.

- Une nouvelle méthode at ( ) pour les chaînes de caractères, les tableaux et les tableaux typés, permettant une indexation relative et l'utilisation de Object.hasOwn, une alternative à Object.prototype.hasOwnProperty.

Pour rappel, la version ECMAScript 2021 livrée en juin dernier avait approuvé des capacités comme String.prototype.ReplaceAll, pour remplacer les occurrences d'une sous-chaîne, et le type d'erreur AggregateError.