Ohjelmointi

ECMA-ehdotus toisi tietueet ja tuplat JavaScriptiin

JavaScript saisi ennätys- ja kaksinkertaiset arvotyypit ECMA Internationalille, joka on standardointielin, joka valvoo suosittua verkkokehityksen ohjelmointikieltä.

Tietueet ja tuplit tuovat JavaScriptiin kaksi syvästi muuttumatonta tietorakennetta: Ennätys, esineiden kaltainen rakenne ja Tuple, taulukon kaltainen rakenne. Luonnos suunnitelmasta ECMA: n teknisen komitean kanssa 39, joka hallinnoi ECMAScriptia, joka on JavaScriptin perustana oleva standardi.

Ehdotuksessa todetaan, että tietueet ja kappaleet voivat sisältää vain alkukantoja ja muita tietueita ja kappaleita. Niitä voidaan pitää "yhdistelmäkuvioina". Ja koska ne perustuvat perusteellisesti primitiiviin, ne ovat syvästi muuttumattomia. Kuten esineet ja taulukot, myös tietueet ja sarjat tukevat mukavia idiomeja rakentamisessa, käytössä ja manipuloinnissa, ehdotuksessa todetaan. Niitä verrataan sisällön eikä identiteetin perusteella.

JavaScript-moottorit saattavat tehdä tiettyjä optimointeja tietueiden ja ryhmien rakentamiseen, käsittelyyn ja vertailuun, analogisesti merkkijonojen toteutuksen kanssa. Tietueiden ja tuplien on tarkoitus olla käyttökelpoisia ja ymmärrettäviä ulkoisen tyyppisen järjestelmän supersetien, kuten TypeScript tai Flow, kanssa.

Tällä hetkellä userland-kirjastot, kuten immutable.js, toteuttavat samanlaisia ​​käsitteitä. Aikaisempaa ECMA: n ehdotusta muuttumattomiksi tietorakenteiksi yritettiin, mutta se hylättiin monimutkaisuuden ja riittämättömien käyttötapausten puuttuessa, ehdotuksessa todetaan. Uusi ehdotus tuo mukanaan merkittäviä muutoksia, jotka tarjoavat käytettävyysetuja käyttäjämaan kirjastoihin verrattuna, kuten seuraavat:

  • Levyt ja kappaleet ovat helposti tutkittavissa virheenkorjauksessa.
  • Muut haarautumista ei tarvita sellaisen yleisen kirjaston kirjoittamiseen, joka kuluttaa muuttumattomia ja JS-objekteja.
  • Vältä käyttötapauksia, joissa kehittäjät voivat kalliisti muuntaa tavallisten JS-objektien ja muuttumattomien rakenteiden välillä.

Tietueet ja näytteet toimivat hyvin esineiden ja taulukoiden kanssa. Ne voidaan lukea samalla tavalla kuin esineitä ja taulukoita. Tärkein ero keskittyy syvään muuttumattomuuteen ja vertailuun arvon eikä identiteetin perusteella. Ehdotettu syntaksia parantaa myös merkittävästi käytön ergonomiaa Ennätys ja Tuple koodissa.

Viimeisin versio ECMAScript-spesifikaatiosta, versio 2020, hyväksyttiin kesäkuussa. Siinä oli ominaisuuksia muun muassa moduulien lataamisessa ja uudessa IsoInt tyyppi.

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