TypeScript 3.8 veröffentlicht: Breaking Changes und neue Editor-Features

© Shutterstock / jakkapan
TypeScript hat ein neues Release erhalten. Neben den bereits in der Beta-Version eingeführten Features kommt v3.8 mit einigen Breaking Changes und Neuerungen im Editor.
TypeScript 3.8 ist da. Die neueste Version der Programmiersprache kann wie gewohnt über Visual Studio Code, NuGet oder über den npm-Befehl npm install typescript
heruntergeladen und installiert werden.
Im Gepäck hat das Release wie üblich die in der Testversion 3.8 Beta vorgestellten Features. Darüberhinaus verweist Progamm-Manager Daniel Rosenwasser in den offiziellen Release Notes auf einige kleinere Breaking Changes und Neuerungen für den Editor.
TypeScript 3.8: Das ist neu
Ein mit dem neuen Release verbundener Breaking Change betrifft die Überprüfung von Properties bei der Zuweisung an Unions. Diese fällt mit dem Update deutlich strenger aus. Properties werden nun nur noch dann keiner Prüfung auf überflüssige Eigenschaften unterzogen, wenn eine Property eine Index Signature plausibel erfüllen kann.
Auf Seiten des Editors enthält TypeScript 3.8 ein neues Refactoring für das Konvertieren von String-Konkatenationen. Im Beispiel der Entwickler wird aus "I have " + numApples + " apples"
der Template String `I have ${numApples} apples`
:
Private Fields und Top-Level await
Private Felder sind ein zuerst in der Beta-Version zu TypeScript 3.8 eingeführtes Feature, das für die ECMAScript-Standardisierung vorgeschlagen wurde. Das Proposal befindet sich derzeit auf Stufe 3. Private Fields beginnen mit einem #
, setzen ihren Scope auf die Klasse, in der sie enthalten sind, und können außerhalb davon nicht aufgerufen werden. Zu beachten in TypeScript ist außerdem, dass die Modifikatoren public
und private
für Private Fields nicht benutzt werden können.
Ebenfalls zu den aus ECMAScript stammenden Features, die nun in TypeScript verfügbar sind, gehört Top-Level await
. Auch dieses Proposal befindet sich dort derzeit auf Stufe 3 im Standardisierungsprozess. Top-Level await
kann für Module verwendet werden. Diese verhalten sich dann wie async
-Funktionen und warten auf Ressourcen. Dadurch können sie nicht von anderen Modulen importiert werden, bevor die notwendigen Ressourcen geladen sind.
Darüber hinaus steht für module
und target
nun die Option es2020
zur Verfügung, die das Kompilierungsziel auf ECMAScript 2020 setzt.
Alle Informationen zum Release von TypeScript 3.8 finden sich auf dem offiziellen Blog.
Hinterlasse einen Kommentar