ECMAScript 2020, posledná verzia oficiálnej špecifikácie, ktorá je základom JavaScriptu, bola formálne schválená spoločnosťou ECMA International a technickým výborom ECMA, ktorý dohliada na špecifikáciu, 16. júna.
ECMAScript 2020 predstavuje niekoľko funkcií od novejimport ()
zariadenie na načítanie modulov do novéhoBigInt
typ pre prácu s celými číslami s ľubovoľnou presnosťou.
Medzi konkrétne vlastnosti zavedené v ECMAScript 2020 patria:
- „Podobný funkcii“
import ()
syntax načítania modulu na asynchrónny import modulov s dynamickým špecifikátorom. Návrh pridávaimport (špecifikátor)
syntaktická forma, pôsobiaca mnohými spôsobmi ako funkcia. Vráti prísľub pre objekt menného priestoru modulu požadovaného modulu, ktorý bol vytvorený po načítaní, inštancii a vyhodnotení závislostí modulu spolu so samotným modulom. Thešpecifikátor
budú vykladané rovnako ako vdovoz
vyhlásenie. Zatiaľ čošpecifikátor
je reťazec, nemusí to byť nevyhnutne reťazcový literál; teda kód akoimport (`./language-packs / $ {navigator.language} .js`)
bude pracovať. To nebolo možné obvyklým spôsobomdovoz
vyhlásenia. S plánomimport ()
sa navrhuje pracovať v oboch moduloch a skriptoch, čím sa kódu skriptu umožní ľahký asynchrónny vstupný bod do sveta modulu a umožní sa mu spustiť kód modulu. BigInt,
nové primitívne číslo pre prácu s celými číslami s ľubovoľnou presnosťou.BigInt
môže predstavovať čísla väčšie ako dve až 53. mocninu, najväčšie číslo JavaScript môže spoľahlivo predstavovať sČíslo
primitívne. ABigInt
sa vytvára pripojenímn
na koniec celého čísla alebo zavolaním konštruktora.- The
matchAll
metóda pre reťazce, na vytvorenie iterátora pre všetky zhodné objekty vygenerované globálnym regulárnym výrazom. Dôvod tohto návrhu je, že ak má vývojár reťazec a buď lepkavý, alebo globálny regulárny výraz s viacerými zachytávajúcimi skupinami, môže vývojár chcieť opakovať všetky zhody, pre ktoré momentálne existuje niekoľko možností, ale s obmedzeniami.Reťazec # matchAll
rieši problémy poskytnutím prístupu ku všetkým zachytávajúcim skupinám a viditeľnou mutáciou predmetného objektu regulárneho výrazu. Promise.allSettled
, nový kombinátor Promise, ktorý neskratuje. Týmto sa vráti prísľub, ktorý je splnený radom snímok stavu sľubu, ale až po vyrovnaní pôvodných sľubov, t. J. Buď boli splnené, alebo zamietnuté.globalThis
, poskytujúci univerzálny spôsob prístupu do globálnehototo
hodnotu.- Zasvätený
exportovať * ako ns z ‘modulu’
syntax na použitie v rámci modulov. - Zvýšená štandardizácia
pre-do
poradie výčtu, čiastočne špecifikujúce poradie výčtu v JavaScripte. import.meta,
objekt vyplnený hostiteľom v moduloch, ktorý môže obsahovať kontextové informácie. Slúži ako metaúžitok JavaScriptu, ktorý obsahuje metadáta špecifické pre hostiteľa o aktuálnom module.- Nullish coalescing, operátor výberu hodnoty pre lepšie riešenie prípadov týkajúcich sa prístupu k majetku. Jedná sa o funkciu syntaxe na zlepšenie práce s „nulovými“ hodnotami (
nulový
alebo nedefinované). - Voliteľné reťazenie, operátor prístupu k vlastnosti a vyvolanie funkcie, ktorý skratuje, ak je hodnota prístupu / vyvolania nulová.
Posledná aktualizácia ECMAScript, ECMAScript 2019, obsahovala možnosti ako napr prototyp.flatMap
pre vnorené polia.