ECMAScript 2021

Numéro de version JavaScript

Les anciennes versions de JS sont nommées par numéros : ES5 (2009) et ES6 (2015).

Depuis 2016, les versions sont nommées par années : ECMAScript 2016, 2017, 2018, 2019, ...

Nouvelles caractéristiques

Nouvelles caractéristiques dans ES2021 :

Nouvelles caractéristiques dans ES2022 :

  • Méthode de tableau at()
  • Méthode de chaîne at()
  • Expression régulière /d
  • Object.hasOwn()
  • error.cause
  • await import
  • Méthodes et champs privés
  • Déclaration de champ de classe

Avis

Ces caractéristiques sont relativement nouvelles.

Les navigateurs plus anciens peuvent nécessiter un code de remplacement (Polyfill)

Méthode ReplaceAll() de la chaîne JavaScript

ES2021 a introduit la méthode de chaîne replaceAll() :

Exemple

text = text.replaceAll("Cats","Dogs");
text = text.replaceAll("cats","dogs");

Essayez-le vous-même

La méthode replaceAll() vous permet de spécifier une expression régulière plutôt qu'une chaîne de caractères à remplacer.

Si le paramètre est une expression régulière, il est nécessaire de définir le drapeau global (g) Sinon cela lève une erreur TypeError.

Exemple

text = text.replaceAll(/Cats/g,"Dogs");
text = text.replaceAll(/cats/g,"dogs");

Essayez-le vous-même

Conseil :ES2020 La méthode de chaîne matchAll() a été introduite.

Tirets de séparation des nombres JavaScript

ES2021 a introduit les tirets de séparation des nombres (_) pour rendre les nombres plus lisibles :

Exemple

const num = 1_000_000_000;

Essayez-le vous-même

Les tirets de séparation des nombres ne sont utilisés que pour des raisons visuelles.

Exemple

const num1 = 1_000_000_000;
const num2 = 1000000000;
(num1 === num2);

Essayez-le vous-même

Les tirets de séparation des nombres peuvent être placés à n'importe quel endroit dans un nombre :

Exemple

const num1 = 1_2_3_4_5;

Essayez-le vous-même

Remarque

Les tirets de séparation des nombres ne peuvent pas apparaître au début ou à la fin d'un nombre.

Dans JavaScript, il n'y a queVariableIl peut commencer par _.

Depuis janvier 2020, tous les navigateurs modernes prennent en charge les tirets de séparation des nombres :

Chrome Edge Firefox Safari Opera
Chrome 75 Edge 79 Firefox 74 Safari 13.1 Opera 67
Juin 2019 Janvier 2020 Octobre 2019 Septembre 2019 Juin 2019