Programmēšana

ECMA priekšlikums ļautu JavaScript ierakstus un kopas

Saskaņā ar priekšlikumu, kas iesniegts ECMA International, kas ir standartu organizācija, kas pārrauga populāro tīmekļa izstrādes programmēšanas valodu, JavaScript iegūtu rekordu un dubultu vērtību tipus.

Ieraksti un apkopojumi JavaScript ieviesīs divas ļoti nemainīgas datu struktūras: Ieraksts, objektam līdzīga struktūra un Tuple, masīvam līdzīga struktūra. Plāna projekts kopā ar ECMA Tehnisko komiteju 39, kas regulē ECMAScript, kas ir JavaScript pamatā esošais standarts.

Priekšlikumā norādīts, ka pieraksti un kopas drīkst saturēt tikai primitīvus un citus ierakstus un kopas. Tos var uzskatīt par “saliktiem primitīviem”. Un, pilnībā balstoties uz primitīviem, tie ir dziļi nemaināmi. Tāpat kā objekti un masīvi, arī ieraksti un kopas atbalsta ērtas idiomas būvēšanai, lietošanai un manipulēšanai, teikts priekšlikumā. Tos salīdzina pēc satura, nevis pēc identitātes.

JavaScript motori var veikt noteiktas ierakstu un kopu konstruēšanas, manipulācijas un salīdzināšanas optimizācijas, līdzīgi kā virknes tiek ieviestas. Ieraksti un kopas ir domāti lietojamiem un saprotamiem ar ārējā tipa sistēmas virskomplektiem, piemēram, TypeScript vai Flow.

Pašlaik lietotāja zemes bibliotēkas, piemēram, immutable.js, ievieš līdzīgas koncepcijas. Iepriekšējais ECMA priekšlikums par nemainīgām datu struktūrām tika mēģināts, taču tika noraidīts sarežģītības un nepietiekamas izmantošanas gadījumu dēļ, teikts priekšlikumā. Jaunais priekšlikums ievieš būtiskas izmaiņas, piedāvājot izmantojamības priekšrocības salīdzinājumā ar lietotāja zemes bibliotēkām, piemēram:

  • Atkļūdotājprogrammā ieraksti un apkopojumi ir viegli atrodami.
  • Lai izveidotu vispārīgu bibliotēku, kas patērē nemaināmus un JS objektus, papildu sazarošana nav nepieciešama.
  • Izvairās no lietošanas gadījumiem, kad izstrādātāji var dārgi pārveidot starp parastajiem JS objektiem un nemainīgajām struktūrām.

Ieraksti un kopas labi mijiedarbojas ar objektiem un masīviem. Tos var nolasīt tāpat kā objektus un masīvus. Galvenās atšķirības centrā ir dziļa nemainība un salīdzinājums ar vērtību, nevis identitāti. Piedāvātā sintakse arī ievērojami uzlabo lietošanas ergonomiku Ieraksts un Tuple kodā.

Jaunākā ECMAScript specifikācijas versija, 2020. gada versija, tika pieņemta jūnijā. Tajā bija iespējas tādās jomās kā moduļu ielāde un jauns BigInt tips.

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