ECMAScript 2021

JavaScript-versioiden numero

Vanhat JS-versiot nimetään numeroilla: ES5 (2009) ja ES6 (2015).

Vuodesta 2016 lähtien versiot nimetään vuosiluvulla: ECMAScript 2016、2017、2018、2019、...

Uudet ominaisuudet

ES2021:n uudet ominaisuudet:

ES2022:n uudet ominaisuudet:

  • Taulukkomenetelmä at()
  • Merkkijonomenetelmä at()
  • Säännöllinen lauseke /d
  • Object.hasOwn()
  • error.cause
  • await tuonti
  • Yksityiset metodit ja kentät
  • Luokan kenttäjulistus

Varoitus

Nämä ominaisuudet ovat suhteellisen uusia.

Vanhemmat selaimet saattavat vaatia korvaavaa koodia (Polyfill)

JavaScript-merkkijonomenetelmä ReplaceAll()

ES2021 otti käyttöön merkkijonomenetelmän replaceAll():

Esimerkki

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

Kokeile itse

replaceAll() -menetelmä sallii määrittää säännöllisen lausekkeen sijaan korvattavan merkkijonon.

Jos parametri on säännöllinen lauseke, on asetettava globaali merkki (gMuuten heittää TypeError-tyypin virheen。

Esimerkki

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

Kokeile itse

Vinkki:ES2020 Introduktion av strängmetoden matchAll().

JavaScript-numeroerottimet (_)

ES2021 otti käyttöön numeroerottimet (_) tehdäkseen numeron luettavammaksi:

Esimerkki

const num = 1_000_000_000;

Kokeile itse

Numeroerottimet ovat vain visuaalisia.

Esimerkki

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

Kokeile itse

Numeroerottimet voidaan sijoittaa luvun mihin tahansa kohtaan:

Esimerkki

const num1 = 1_2_3_4_5;

Kokeile itse

Huomaa

Numeroerottimet eivät saa olla luvun alussa tai lopussa.

JavaScriptissa vainMuuttujatVoivat aloittaa _-merkin kanssa.

Vuodesta 2020 vuoden 1 kuukaudelta lähtien kaikki nykyaikaiset selaimet tukevat numeroerottimia:

Chrome Edge Firefox Safari Opera
Chrome 75 Edge 79 Firefox 74 Safari 13.1 Opera 67
Juni 2019 Tammikuu 2020 lokakuu 2019 Syyskuu 2019 Juni 2019