TypeScript 2.4 erschienen: Die Neuerungen auf einen Blick

© Shutterstock/bondvit
Rund zwei Wochen nach der Veröffentlichung des Release Candidates steht TypeScript 2.4 nun final zur Verfügung. Im Gepäck hat die neue Sprachversion viele neue Features – darunter etwa auch dynamische import()
-Expressions und String-Enums.
Rund zwei Monate sind seit dem Release von TypeScript 2.3 vergangen. Seitdem wurde einige Arbeit in das JavaScript-Superset gesteckt, sodass die neue Version mit vielen Verbesserungen und einigen neuen Features daherkommt. In einem Blogpost im TypeScript-Blog hat Daniel Rosenwasser die Highlights der neuen Sprachversion vorgestellt.
TypeScript 2.4 – das ist neu
Wie bereits in der Ankündigung des Release Candidates der neuen TypeScript-Version bekanntgegeben, bringt TypeScript 2.4 einige neue Features mit. Eine der spannendsten Neuerungen ist dabei der Support für dynamische import()
-Expressions. Dabei handelt es sich um ein neues ECMAScript-Feature, dass es dem User erlaubt, ein Modul an jedem beliebigen Punkt eines Programms asynchron anzufordern. Diese Module werden als Promises der Module selbst zurückgegeben und können in einer async
-Funktion mit await
oder als Callback-Funktion mit .then
versehen werden. Dazu sagt Rosenwasser:
What this means in short that you can conditionally and lazily import other modules and libraries to make your application more efficient and resource-conscious.
Neu sind auch die sogenannten String-Enums. Bereits seit dem Release von TypeScript bietet das JavaScript-Superset Enums; zudem stehen schon seit einiger Zeit String Literal Types zur Verfügung. In der neuen TypeScript-Version gibt es nun einige Neuerungen bei den Aufzählungstypen: Ab sofort erlaubt TypeScript es Enum-Members, String-Initializers zu beinhalten. Diese String-Enums haben etwa den Vorteil, dass mit ihnen leichter debuggt werden kann; zudem können sie bestehende Systeme, die Strings nutzen, beschreiben.
Return Types als Inference-Ziele
TypeScript 2.4 bringt zudem einige Verbesserungen in puncto Typen mit. So lässt TypeScript künftig Typen in gewisssen Umständen durch Return Types laufen; User können so leichter entscheiden, an welche Stelle sie Typen platzieren wollen. Außerdem versucht TypeScript nun, Type-Parameter beim Vergleichen von zwei Single-Signature-Typen zu vereinen. Das führt gleichzeitig zu strengeren Prüfungen auf Generic Functions.
Ebenso führt die neue Sprachversion das Konzept der sogenannten „weak types“ ein. Dazu heißt es im zugehörigen Blogpost:
A weak type is any type that contains nothing but all-optional properties. […] In TypeScript 2.4, it’s now an error to assign anything to a weak type when there’s no overlap in properties.
Diese Änderung des Typ-Systems kann potenziell zu einigen Breaking Changes führen; laut des TypeScript-Teams sollten sich diese aber nicht in Fehlern in bestehenden Codebases äußern.
Alle Informationen zur neuen TypeScript-Version können noch mal im oben genannten Blogpost nachgelesen werden; alle Neuerungen sind auf GitHub zusammengefasst.
Hinterlasse einen Kommentar