ECMA International un ECMA tehniskā komiteja, kas pārrauga specifikāciju, 16. jūnijā oficiāli apstiprināja ECMAScript 2020, oficiālās JavaScript pamatā esošās specifikācijas vēlīno versiju.
ECMAScript 2020 ievieš vairākas funkcijas, sākot no jaunasimports ()
iespēja moduļu ielādēšanai jaunāBigInt
tips darbam ar patvaļīgiem precizitātes veseliem skaitļiem.
Īpašās iezīmes, ko ieviesa ECMAScript 2020, ir šādas:
- “Funkcija līdzīga”
imports ()
moduļu ielādes sintakse, lai asinhroni importētu moduļus ar dinamisko specifikatoru. Priekšlikumā pievienotaimportēt (specifikators)
sintaktiskā forma, kas darbojas daudzos veidos kā funkcija. Tas atgriež solījumu par pieprasītā moduļa moduļa nosaukumvietas objektu, kas izveidots pēc moduļa atkarību iegūšanas, instancēšanas un novērtēšanas, kā arī ar pašu moduli. Thespecifikators
tiks interpretēts tāpat kāimportēt
deklarāciju. Kamērspecifikators
ir virkne, tas ne vienmēr ir virknes literāls; tādējādi kods līdzīgsimportēt (`./language-packs / $ {navigator.language} .js`)
strādās. Ar parasto tas nebija iespējamsimportēt
deklarācijas. Ar plānuimports ()
tiek ierosināts strādāt gan moduļos, gan skriptos, piešķirot skripta kodam vieglu asinhronu ieejas punktu moduļu pasaulē un ļaujot tam sākt darbināt moduļa kodu. BigInt,
jauns primitīvs skaitlis darbam ar patvaļīgiem precizitātes veseliem skaitļiem.BigInt
var attēlot skaitļus, kas lielāki par diviem līdz 53. skaitlim, lielāko skaitli JavaScript var droši attēlot arSkaits
primitīvs. ABigInt
tiek izveidots, pievienojotn
līdz veselā skaitļa beigām vai izsaucot konstruktoru.- The
matchAll
metode virknēm, lai izveidotu iteratoru visiem saskaņotajiem objektiem, kurus ģenerē globālā regulārā izteiksme. Šī priekšlikuma pamatojums ir tāds, ka, ja izstrādātājam ir virkne un vai nu lipīga, vai globāla regulārā izteiksme ar vairākām uztveršanas grupām, izstrādātājs varētu vēlēties atkārtot visas spēles, kurām pašlaik ir vairākas iespējas, bet ar ierobežojumiem.String # matchAll
risina problēmas, nodrošinot piekļuvi visām tverošajām grupām un acīmredzami nemutējot attiecīgo regulārās izteiksmes objektu. Solījums.vissNokārtots
, jauns Promise kombinators, kuram nav īssavienojuma. Tas atgriež solījumu, kas tiek izpildīts ar solījumu stāvokļa momentuzņēmumu masīvu, bet tikai pēc tam, kad sākotnējie solījumi ir izpildīti, t.i., ir vai nu izpildīti, vai noraidīti.globālsTas
, nodrošinot universālu veidu, kā piekļūt globālajamšo
vērtība.- Veltīts
eksportēt * kā ns no ‘moduļa’
sintakse, ko izmantot moduļos. - Paaugstināta standartizācija
for-in
uzskaites kārtība, daļēji norādot uzskaites kārtību JavaScript. import.meta,
resursdatora apdzīvots objekts moduļos, kas var saturēt kontekstuālu informāciju. Tas kalpo kā JavaScript meta īpašums, turot resursdatora specifiskos metadatus par pašreizējo moduli.- Nullish coalescing, vērtības izvēles operators, lai labāk izskatītu lietas, kas saistītas ar piekļuvi īpašumiem. Tā ir sintakses funkcija, lai uzlabotu darbu ar “nulles” vērtībām (
nulle
vai nav definēts). - Izvēles ķēdes, piekļuves īpašumam un funkciju izsaukšanas operators, kas īssavienos, ja vērtība, kurai piekļūt / izsaukt, nav derīga.
Pēdējais ECMAScript atjauninājums ECMAScript 2019 ietvēra tādas iespējas kā prototips.flatMap
ligzdotajiem masīviem.