De bètaversie van TypeScript 4.2 is nu beschikbaar. Er worden een aantal nieuwe functies toegevoegd net als een aantal belangrijke wijzigingen.
In de nieuwe versie kunnen rest elementen op meer manieren worden gebruikt dan voorheen. Voorheen waren ze alleen toegestaan op de laatste positie van een tuple-type, maar ze kunnen nu overal binnen een tuple voorkomen. Er is een beperking dat rest elementen niet kunnen worden gevolgd door een ander optional element of rest element.
De bètaversie van TypeScript 4.2 heeft ook slimmere internals. Het houdt nu bij hoe typen zijn geconstrueerd en maakt onderscheid tussen type-aliassen en instanties van andere aliassen.
Een andere nieuwe functie is dat template literal expressions nu template literate types hebben. Template literal types werden in 4.1 geïntroduceerd als een manier om specifieke patronen van strings te modelleren, maar er was inconsistentie tussen types en expressions. Nu zullen template string expressions altijd beginnen met template literal types.
Andere nieuwe functies in 4.2 zijn onder meer:
Stricter checks for the “in” operator
Abstract construct signatures
–explainFiles that show why certain files are included in a program
Relaxed rules between optional properties and string index signatures
A new way to declare new functions and methods based on the call site
There are a number of breaking changes as well, such as template literal expressions now having template literal types, noImplicityAny errors apply to loose yield expressions, and more.
“We’re excited to hear your thoughts on TypeScript 4.2! With the beta we’re still in relatively early stages, but we’re counting on your feedback to help make this an excellent release. So try it today, and let us know if you run into anything,” schreef Daniel Rosenwasser, programmamanager van TypeScript in een bericht.
Bekijk het originele artikel hier