Programmering

ECMAScript-veikart: Nye JavaScript-funksjoner for 2019

ECMAScript 2019, den siste versjonen av spesifikasjonen som tjener som grunnlag for JavaScript, er ferdig. ECMA International godkjente spesifikasjonen i juni.

De nye funksjonene introdusert i ECMAScript 2019 inkluderer følgende:

  • Symbol.prototype.beskrivelse, en tilgangs eiendom som har angi tilgang er udefinert. Det er få tilgang funksjon utfører trinn inkludert: La s være denne verdien, la sym være ?thisSymbolValue (s), og kom tilbake sym.[[Beskrivelse]]. Målet med denne funksjonen er å avsløre [[Beskrivelse]] internt spor av et symbol direkte i stedet for bare indirekte gjennom Symbol.prototype.toString.
  • Endringer i Function.prototype.toString. Det er foreslått endringer, slik at implementering ikke er nødvendig for å beholde kildetekst for alle funksjoner som er definert med ECMAScript-kode.
  • prototype.flatMap, en vanlig arrayoperasjon som tar en nestet arraystruktur og fjerner ett eller flere nivåer av hekking, avhengig av parameteren. Flat eksisterer i array-lignende biblioteker som Lodash, noe som har ført til at brukere ønsker den samme funksjonaliteten i vanilje JavaScript.
  • prototype.flatmap, et kart etterfulgt av en leilighet, gir en liten bekvemmelighet og liten optimalisering. Flatmap er praktisk fordi flating og kartlegging ofte er nyttig i samme operasjon. Det er også en optimalisering fordi det ikke er behov for å tildele en matrise for kartleggingen bare for å forkaste den når den blir flatt.
  • prototype.sort (), en metode som sorterer elementene i en matrise på plass og returnerer matrisen, er nå stabil.
  • Object.fromEntries, som gir en ny statisk metode for å transformere en liste over nøkkelverdipar til et objekt.
  • String.prototype.trimStart og String.prototype.trimEnd. Begrunnelsen bak disse revisjonene er at alle større motorer har implementert tilsvarende trimVenster og trimRight fungerer uten en standard spesifikasjon. For konsistens med padStart / padEnd, trimStart, trimEnd, trimVenster, og trimRight blir foreslått som alias for nettkompatibilitet.
  • Oppdateringer til JSON. Strenger å avgi velformet UTF-16 (Unicode Transformation Format). Foreløpig kan dårlige kodenheter sendes ut for surrogatkodepunkter.
  • Valgfri å fange bindende, slik at utviklere kan utelate a å fange binding når bindingen ikke ville bli brukt.

Den fullstendige ECMAScript 2019-spesifikasjonen kan vises online på ECMA International-nettstedet. Det kan også lastes ned. Fullførte ECMAScript-utgaver blir vanligvis publisert hver juni, for eksempel siste års ECMAScript 2018-spesifikasjon.