Ohjelmointi

ECMAScript 2020 spec for JavaScript hyväksytty

ECMA International ja spesifikaatiota valvova ECMA: n tekninen komitea hyväksyi virallisesti ECMAScript 2020: n, joka on JavaScriptin taustalla olevan virallisen eritelmän myöhäinen versio, 16. kesäkuuta.

ECMAScript 2020 tuo käyttöön useita ominaisuuksia uudestatuonti() mahdollisuus moduulien lataamiseen uuteenIsoInt tyyppi mielivaltaisten tarkkuuslukujen kanssa työskentelyyn.

ECMAScript 2020: n erityispiirteitä ovat:

  • "Toimintamainen" tuonti() moduulien lataussyntaksi tuoda moduulit asynkronisesti dynaamisen määrittelijän avulla. Ehdotukseen lisätään tuonti (määrittelijä) syntaktinen muoto, joka toimii monin tavoin kuin funktio. Se palauttaa vaaditun moduulin moduulin nimitilaobjektille lupauksen, joka luodaan moduulin riippuvuuksien noutamisen, instantisoinnin ja arvioinnin jälkeen, sekä itse moduulin.määrittelijä tulkitaan samalla tavalla kuin tuonti vakuutus. Sillä aikaa määrittelijä on merkkijono, se ei välttämättä ole merkkijonon kirjaimellinen; siis koodaa kuten tuonti (`./kielipaketit / $ {navigator.kieli} .js`) toimii. Tämä ei ollut mahdollista tavallisella tavalla tuonti ilmoitukset. Suunnitelman kanssa tuonti() ehdotetaan toimivan sekä moduuleina että komentosarjoina, mikä antaa komentokoodille helpon asynkronisen sisäänkäynnin moduulimaailmaan ja antaa sen aloittaa moduulikoodin suorittamisen.
  • IsoInt, uusi primitiivinen luku mielivaltaisten tarkkuuslukujen kanssa työskentelyyn. IsoInt voi edustaa lukuja, jotka ovat suurempia kuin kaksi 53. voimaan, suurin luku JavaScript voi luotettavasti edustaa Määrä primitiivinen. A IsoInt luodaan liittämällä n kokonaisluvun loppuun tai soittamalla konstruktorille.
  • otteluKaikki merkkijonojen menetelmä iteraattorin tuottamiseksi kaikille yleisen säännöllisen lausekkeen luomille vastaaville kohteille. Tämän ehdotuksen taustalla on, että jos kehittäjällä on merkkijono ja joko tahmea tai globaali säännöllinen lauseke, jossa on useita sieppausryhmiä, kehittäjä saattaa haluta toistaa kaikki ottelut, joille on tällä hetkellä useita vaihtoehtoja, mutta rajoituksin. Merkkijono # matchAll ratkaisee ongelmat tarjoamalla pääsyn kaikille sieppausryhmille eikä mutatoimalla näkyvää kyseistä säännöllisen lausekkeen objektia.
  • Promise.all rauhoittunut, uusi Promise-yhdistin, joka ei oikosulku. Tämä palauttaa lupauksen, joka täyttyy joukolla lupaustilannekuvia, mutta vasta sen jälkeen, kun alkuperäiset lupaukset ovat täyttyneet, ts. Ne on joko toteutettu tai hylätty.
  • globaaliTämä, joka tarjoaa yleismaailmallisen tavan päästä maailmanlaajuisesti Tämä arvo.
  • Omistettu vie * ns-muodossa moduulista syntaksia käytettäväksi moduuleissa.
  • Lisääntynyt standardointi sisään-sisään luettelointijärjestys, määrittelemällä osittain JavaScriptin luettelointijärjestys.
  • import.meta, isäntäkohtainen objekti moduuleissa, joka voi sisältää asiayhteyteen liittyviä tietoja. Tämä toimii JavaScript-metaproperty-ominaisuutena, joka pitää isäntäkohtaisia ​​metatietoja nykyisestä moduulista.
  • Nullish coalescing, arvon valintaoperaattori, joka parantaa kiinteistöjen käyttöoikeuksien käsittelyä. Se on syntaksitoiminto, jolla parannetaan ”tyhjien” arvojen käyttöä (tyhjä tai määrittelemätön).
  • Valinnainen ketjutus, ominaisuuskäyttö- ja toimintokutsuoperaattori, joka oikosulku, jos pääsy / kutsuttava arvo on tyhjä.

Viimeisin päivitys ECMAScriptiin, ECMAScript 2019, sisälsi ominaisuuksia, kuten prototyyppi.flatMap sisäkkäisiin ryhmiin.

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