ECMAScript 2021

Numer wersji JavaScript

Starsze wersje JS są nazywane liczbami: ES5 (2009) i ES6 (2015).

Od 2016 roku wersje są nazywane rokiem: ECMAScript 2016, 2017, 2018, 2019, ...

Nowe cechy

Nowe cechy w ES2021:

Nowe cechy w ES2022:

  • Metoda tablicy at()
  • Metoda string at()
  • Wyrażenie regularne /d
  • Object.hasOwn()
  • error.cause
  • await import
  • Prywatne metody i pola
  • Deklaracja pól klasowych

Ostrzeżenie

Te cechy są stosunkowo nowe.

Starsze przeglądarki mogą wymagać alternatywnego kodu (Polyfill)

Metoda string ReplaceAll() w JavaScript

ES2021 wprowadził metodę string replaceAll():

Przykład

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

Spróbuj sam

Metoda replaceAll() pozwala na指定一个正则 expression zamiast 代替的字符串。

Jeśli argument jest wyrażeniem regularnym, musi być ustawiony znak globalny (gJeśli to nie nastąpi, zostanie rzucony TypeError.

Przykład

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

Spróbuj sam

Wskazówka:}ES2020 Wprowadzono metodę string matchAll().

Cyfrowe separatory w JavaScript

ES2021 wprowadził cyfrowe separatory (_) aby uczynić liczbę bardziej czytelną:

Przykład

const num = 1_000_000_000;

Spróbuj sam

Cyfrowe separatory są używane wyłącznie do celów wizualnych.

Przykład

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

Spróbuj sam

Cyfrowe separatory mogą być umieszczone w dowolnym miejscu liczby:

Przykład

const num1 = 1_2_3_4_5;

Spróbuj sam

Uwaga

Cyfrowe separatory nie mogą pojawiać się na początku ani końcu liczby.

W JavaScript, tylkoZmienneMogą zaczynać się od podkreślenia (_).

Od stycznia 2020 roku wszystkie nowoczesne przeglądarki obsługują cyfrowe separatory:

Chrome Edge Firefox Safari Opera
Chrome 75 Edge 79 Firefox 74 Safari 13.1 Opera 67
Czerwiec 2019 roku Styczeń 2020 roku Październik 2019 roku Wrzesień 2019 roku Czerwiec 2019 roku