ECMAScript 2021

JavaScript-Versionen

Alte JS-Versionen werden numerisch benannt: ES5 (2009) und ES6 (2015).

Ab 2016 werden Versionen nach Jahren benannt: ECMAScript 2016, 2017, 2018, 2019, ...

Neue Eigenschaften

Neue Eigenschaften in ES2021:

Neue Eigenschaften in ES2022:

  • Array-Methode at()
  • String-Methode at()
  • Regulärer Ausdruck /d
  • Object.hasOwn()
  • error.cause
  • await import
  • Private Methoden und Felder
  • Klassische Felder

Warnung

Diese Eigenschaften sind relativ neu.

Ältere Browser benötigen möglicherweise eine alternative Code (Polyfill) Lösung.

JavaScript String-Methode ReplaceAll()

ES2021 hat die String-Methode replaceAll() eingeführt:

Beispiel

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

Versuchen Sie es selbst

Die Methode replaceAll() ermöglicht es Ihnen, ein reguläres Ausdruck anstatt eines zu ersetzen Strings zu spezifizieren.

Wenn der Parameter ein reguläres Ausdruck ist, muss das globale Zeichen (global flag) gesetzt werden (g) sonst wird ein TypeError ausgelöst.

Beispiel

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

Versuchen Sie es selbst

Hinweis:ES2020 hat die String-Methode matchAll() eingeführt.

JavaScript-Numerische Trennzeichen (_)

ES2021 hat numerische Trennzeichen eingeführt (_) um die Lesbarkeit der Zahl zu verbessern:

Beispiel

const num = 1_000_000_000;

Versuchen Sie es selbst

Numerische Trennzeichen dienen nur zur visuellen Verwendung.

Beispiel

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

Versuchen Sie es selbst

Numerische Trennzeichen können an jeder Stelle in einer Zahl platziert werden:

Beispiel

const num1 = 1_2_3_4_5;

Versuchen Sie es selbst

Achtung

Numerische Trennzeichen dürfen nicht am Anfang oder am Ende einer Zahl vorkommen.

In JavaScript gibt es nurVariablekönnen mit einem Unterstrich beginnen.

Seit Januar 2020 unterstützen alle modernen Browser numerische Trennzeichen:

Chrome Edge Firefox Safari Opera
Chrome 75 Edge 79 Firefox 74 Safari 13.1 Opera 67
Juni 2019 Januar 2020 Oktober 2019 September 2019 Juni 2019