Programiranje

ECMAScript 2020 spec za JavaScript je odobren

ECMAScript 2020, zadnjo različico uradne specifikacije, na kateri temelji JavaScript, je uradno odobril ECMA International in tehnični odbor ECMA, ki je nadziral specifikacijo, 16. junija.

ECMAScript 2020 uvaja več funkcij, od novihuvoz () objekt za nalaganje modulov na novoBigInt tip za delo s poljubno natančnimi celimi števili.

Posebne funkcije, ki jih uvaja ECMAScript 2020, vključujejo:

  • "Funkcionalni" uvoz () sintaksa nalaganja modulov za asinhroni uvoz modulov z dinamičnim specifikatorjem. Predlog dodaja uvoz (specifikator) skladenjska oblika, ki v mnogih pogledih deluje kot funkcija. Vrne obljubo za objekt imenskega prostora modula zahtevanega modula, ustvarjen po pridobivanju, instanciranju in ocenjevanju odvisnosti modula, skupaj s samim modulom. Thespecifikator se bo razlagalo enako kot v uvoz izjavo. Medtem specifikator je niz, ni nujno, da je dobesedno; tako kodo všeč uvoz (`./language-packs / $ {navigator.language} .js`) bo delovalo. To običajno ni bilo mogoče uvoz izjave. Z načrtom uvoz () je predlagano za delo tako v modulih kot v skriptih, kar skriptni kodi omogoča enostavno asinhrono vstopno točko v svet modulov in ji omogoča, da začne izvajati modulno kodo.
  • BigInt, novo primitivno število za delo s poljubnimi natančnimi celimi števili. BigInt lahko predstavlja številke, večje od dveh do 53. stopnje, največje število JavaScript lahko zanesljivo predstavlja z Številka primitivno. A BigInt je ustvarjen z dodajanjem n na konec celotnega števila ali s klicem konstruktorja.
  • The matchAll metoda za nize, da ustvari iterator za vse ujemajoče se predmete, ki jih generira globalni regularni izraz. Utemeljitev tega predloga je, da če ima razvijalec niz in je lepljiv ali splošen regularni izraz z več skupinami za zajemanje, bo razvijalec morda želel ponoviti vsa ujemanja, za katera trenutno obstaja več možnosti, vendar z omejitvami. String # matchAll naslavlja težave tako, da omogoča dostop do vseh zajemnih skupin in ne vidno mutira zadevni predmet regularnega izraza.
  • Promise.allSettled, nov kombinator Promise, ki ne povzroči kratkega stika. To vrne obljubo, ki je izpolnjena z vrsto posnetkov stanja obljub, vendar šele potem, ko so prvotne obljube poravnane, tj. Bodisi izpolnjene bodisi zavrnjene.
  • globalno, ki zagotavlja univerzalen način dostopa do globalnega to vrednost.
  • Predan izvoz * kot ns iz 'modula' sintaksa za uporabo znotraj modulov.
  • Povečana standardizacija za-v enumeration order, delno določa enumeration order v JavaScript.
  • import.meta, gostiteljsko naseljen objekt v modulih, ki lahko vsebuje kontekstne informacije. Ta služi kot metalastnost JavaScript, ki vsebuje metapodatke o trenutnem modulu, specifične za gostitelja.
  • Nullish coalescing, operater za izbiro vrednosti za boljše obravnavanje primerov, ki vključujejo dostop do lastnine. Je sintaksna funkcija za izboljšanje dela z „ničelnimi“ vrednostmi (nič ali nedoločeno).
  • Izbirno veriženje, operater dostopa do lastnosti in klica funkcije, ki bo povzročil kratek stik, če je vrednost za dostop / priklic nična.

Zadnja posodobitev ECMAScripta, ECMAScript 2019, je imela funkcije, kot so prototype.flatMap za ugnezdena polja.

$config[zx-auto] not found$config[zx-overlay] not found