© GoodStudio/shutterstock.com
Spannende TypeScript-Neuerungen im Überblick

Starke Typen


TypeScript hat sich als Best Practice für die JavaScript-basierte Webentwicklung etabliert. Während Angular bereits seit Version 2 voll auf TypeScript setzt, kommt die typisierte JavaScript-Obermenge auch zunehmend in Angular-unabhängigen Webprojekten zum Einsatz. Das liegt am Mehrwert, den TypeScript gegenüber purem JavaScript bietet: Die statische Typisierung zeigt zur Compile-Zeit Fehler auf, zudem werden Entwickler durch Typinformationen beim Schreiben von Code unterstützt. TypeScript liegt zurzeit in Version 3.8 vor. Dieser Artikel zeigt die Entwicklung der Sprache ab Version 3.0 und stellt Neuerungen und Features vor.

Die Programmiersprache TypeScript wird von Microsoft öffentlich auf GitHub [1] weiterentwickelt. Dort hat das Team auch die komplette Roadmap [2] veröffentlicht. Ein Blick darauf lohnt sich: Neben vergangenen Meilensteinen enthält die Roadmap auch die kommende Version. Zudem finden sich dort Ideen für die Zukunft, die später höchstwahrscheinlich zu neuen Features der Sprache führen werden. Doch nun zu den interessantesten Features seit TypeScript 3.0.

Der unknown-Datentyp

Mit TypeScript 3.0 wurde der unkown-Datentyp eingeführt. Er ist das typisierte Gegenstück zum Datentyp any. Dieser ist schon seit TypeScript 1.0 Teil der Sprache und sollte verstanden worden sein, bevor man sich unknown zuwendet.

In TypeScript lässt sich jeder Typ dem any-Typ zuweisen. Das macht ihn zu einem sogenannten Top Type des TypeScript-Systems. So weit zur Theorie. In der Praxis bedeutet das, dass der TypeScript-Compiler für Variablen vom Typ any keine Prüfungen vornimmt. Der Compiler prüft weder, was zugewiesen wurde, noch, ob die verwendeten Properties oder Methoden auf dem Typ vorhanden sind. Er prüft wirklich gar nichts.

Das folgende Listing zeigt den any-Typ im Einsatz. Zuerst wird eine Zahl zugewiesen, dann ein boolescher Wert, dann der String Thomas. In der vierten Zeile wird die auf string verfügbare length-Property genutzt, um die Länge des Strings an der Console des Browsers auszugeben. Zuletzt wird die Methode printFullName aufgerufen. Der TypeScript-Compiler lässt erwartungsgemäß alles durchgehen. Erst zur Laufzeit wird in der letzten Zeile ein Fehler auftreten, da es die Methode printFullName auf dem der someValue-Variable zugewiesenen String nicht gibt.

let someValue : any = 5; someValue = true; someValue = 'Thomas'; console.log(someValue.length); someValue.printFullName();

Das nächste Listing zeigt den gleichen Codeausschnitt wie das vorige, m...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang