TypeScript | |
---|---|
Basisdaten | |
Paradigmen: | funktional, imperativ, objektorientiert (Prototypen, Klassen), strukturiert, skripting |
Erscheinungsjahr: | 2012 |
Designer: | Microsoft |
Entwickler: | Anders Hejlsberg, Microsoft |
Aktuelle Version | 5.7.2[1] (22. November 2024) |
Typisierung: | stark, schwach, duck, dynamisch, statisch, explizit, implizit |
Beeinflusst von: | JavaScript, Java, C# |
Lizenz: | Apache-Lizenz |
www.typescriptlang.org |
TypeScript ist eine von Microsoft entwickelte Skriptsprache, die auf den Vorschlägen zum ECMAScript-6-Standard[2] basiert und statische Typisierung zu JavaScript hinzufügt. Sprachkonstrukte von TypeScript, wie Klassen, Vererbung, Module und anonyme Funktionen, wurden auch in ECMAScript 6 übernommen.[3]
TypeScript ist eine echte Obermenge (strict superset) von JavaScript bzw. ECMAScript 2015. Jeder JavaScript-Code ist daher auch gültiger TypeScript-Code, so dass gängige JavaScript-Bibliotheken (wie z. B. jQuery oder Angular) auch in TypeScript verwendet werden können.[3]
TypeScript unterstützt mit Modulen das Kapseln von Klassen, Interfaces, Funktionen und Variablen in eigene Namensräume. Dabei wird zwischen internen und externen Modulen unterschieden. Interne Module lehnen sich an die Modul-Spezifikation aus ECMAScript 6 an, wohingegen externe Module eine JavaScript-Bibliothek (AMD oder CommonJS) nutzen.[4]
Der von Microsoft entwickelte TypeScript-Compiler transkompiliert TypeScript-Code nach ECMAScript 5 (ES5), optional auch nach ECMAScript 3 (ES3).
TypeScript kann mit Hilfe von Plug-ins in verschiedene Build-Management-Tools integriert werden, darunter Grunt (grunt-ts[5]), Apache Maven (TypeScript Maven Plugin[6]) und Gradle (TypeScript Gradle Plugin[7]).
<ref>
-Tag; kein Text angegeben für Einzelnachweis mit dem Namen harmony.<ref>
-Tag; kein Text angegeben für Einzelnachweis mit dem Namen ts.<ref>
-Tag; kein Text angegeben für Einzelnachweis mit dem Namen modules.<ref>
-Tag; kein Text angegeben für Einzelnachweis mit dem Namen grunt-ts.<ref>
-Tag; kein Text angegeben für Einzelnachweis mit dem Namen typescript-maven-plugin.<ref>
-Tag; kein Text angegeben für Einzelnachweis mit dem Namen typescript-gradle-plugin.