Microsoft lost Release Candidate voor TypeScript 3.1

In aanloop naar zijn Ignite-conferentie later deze maand, geeft Microsoft de Release Candidate van TypeScript 3.1 vrij.

TypeScript is een open source programmeertaal die zes jaar geleden door Microsoft werd geïntroduceerd. Het is een superset JavaScript met optionele types die het volgens Microsoft eenvoudiger maken om grootschalige client- of serverside applicaties te ondersteunen.

Versie 3.1 voegt onder meer ondersteuning toe voor toewijsbare tupel- en rij-types, gebaseerd op de bestaande functionaliteit voor toewijsbare objecttypes.

“In plaats van een nieuw concept voor het toewijzen over een tupel in te voeren, doen toewijsbare objecttypes nu gewoon ‘het juiste’ wanneer ze itereren over tupels en rijen”, legt Daniel Rosenwasser van het TypeScript-team uit.

Een tweede vernieuwing heeft betrekking tot namespaces. Namespaces kunnen niet goed overweg met declaraties zoals var, let of const. Dat kan voor problemen zorgen wanneer je code probeert over te zetten van bijvoorbeeld React naar TypeScript.

“In TypeScript 3.1 analyseert de type-checker, voor elke functiedeclaratie of const-declaratie die met een functie is geïnitialiseerd, de scope om toegevoegde eigenschappen bij te houden”, vertelt Rosenwasser.

Brekende wijzigingen

Wie aan de slag wilt gaan met versie 3.1 moet er rekening mee houden dat een paar zaken ook niet meer naar behoren werken. Een groot aantal vendorspecifieke types zijn verdwenen van de ingebouwde libt.d.ts-library. Dat is een onvermijdelijk gevolg van de keuze om met Web IDL-bestanden van de WHAWG DOM-specificatie te werken. Als je de types absoluut nodig hebt, raadt Microsoft aan om de declaraties lokaal toe te voegen.

Tot slot werden enkele wijzigingen aan narrowing-functies uitgevoerd die ertoe kunnen leiden dat fouten worden gegenereerd en dat de syntax enigszins moet worden aangepast.

De finale versie van TypeScript 3.1 moet binnen enkele weken beschikbaar zijn.

nieuwsbrief

Abonneer je gratis op ITdaily !

  • This field is for validation purposes and should be left unchanged.
terug naar home