Programovanie

Špecifikácia ECMAScript 2020 pre JavaScript schválená

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áva import (š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 v dovoz vyhlásenie. Zatiaľ čo špecifikátor je reťazec, nemusí to byť nevyhnutne reťazcový literál; teda kód ako import (`./language-packs / $ {navigator.language} .js`) bude pracovať. To nebolo možné obvyklým spôsobom dovoz vyhlásenia. S plánom import () 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. A BigInt sa vytvára pripojením n 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álneho toto 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.

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