Learn TypeScript
A free, interactive TypeScript course built on top of JavaScript. You write TS on every lesson - type annotations, interfaces, generics, unions, narrowing - with AI hints when you get stuck and a certificate when you finish. Part of the wider JavaScript journey, so the JS context that makes TypeScript click is right there.
253,075+ codders eingeschrieben
- Anfängerfreundlich
KI-gestützte Coding-Hilfe
Praktische, interaktive Lektionen
Audio-Erzählung in jeder Lektion
Quizfragen zum Wissenstest
Kostenloses Abschlusszertifikat
Lehrplan
Dieser Abschnitt ist Teil der JavaScript-Journey. Der vollständige Lehrplan enthält weitere Abschnitte - klicke unten auf eine Vorschau, um sie auf der Journey-Seite anzusehen.
- Abschnitt 1Grundlagen77 Lektionen
- Abschnitt 2Logik & Ablauf65 Lektionen
Abschnitt 1
Einführung in TypeScript
Abschnitt startenStartenAusklappenEinklappenEinführung in TypeScript nach dem Erlernen von JavaScriptErste Schritte mit TS
5 Lektionen232- 01Was ist TypeScript?Quiz
- 02Warum TypeScript verwenden?Quiz
- 03Dein erster TypeScript-CodeAufgabeQuiz
- 04Kompilierungsprozess & FehlerQuiz
- 05Zusammenfassung: Einführung in TSAufgabe
Basis-Typen
7 Lektionen748- 01Basis-Typen: str, num, booleanAufgabeQuiz
- 02Der 'any'-Typ: Der NotausgangAufgabeQuiz
- 03Der 'unknown'-TypAufgabeQuiz
- 04Arbeiten mit 'null' & 'undef'AufgabeQuiz
- 05Typinferenz in der PraxisAufgabeQuiz
- 06Explizite Typ-AnnotationenAufgabeQuiz
- 07Zusammenfassung: Übung zu Basis-TypenAufgabe
Datenstruktur: Arrays & Tupel
9 Lektionen862- 01Typisierte ArraysAufgabeQuiz
- 02'readonly'-Modifikator für ArraysAufgabeQuiz
- 03Was ist ein Tupel?Quiz
- 04Deklarieren von und Zugriff auf TupelAufgabeQuiz
- 05Destrukturierung von TupelnAufgabeQuiz
- 06Readonly-TupelAufgabeQuiz
- 07Mehrdimensionale typisierte ArraysAufgabeQuiz
- 08Spread-Operator mit ArraysAufgabeQuiz
- 09Zusammenfassung: Arrays und TupelAufgabe
Arbeiten mit Funktionen
8 Lektionen855- 01Typisierung von Parametern & RückgabewertenAufgabeQuiz
- 02Typisierung von Arrow-FunktionenAufgabeQuiz
- 03Der Rückgabetyp 'void'AufgabeQuiz
- 04Optionale Parameter mit '?'AufgabeQuiz
- 05Standard-ParameterwerteAufgabeQuiz
- 06Typisierung von Rest-ParameternAufgabeQuiz
- 07Definieren von FunktionstypenAufgabeQuiz
- 08Zusammenfassung: Typisierte Funktionen erstellenAufgabe
Typen: Aliase, Unions & Intersections
7 Lektionen751- 01Typ-Aliase für primitive DatentypenAufgabeQuiz
- 02Union-Typen ('|')AufgabeQuiz
- 03Arbeiten mit Union-TypenAufgabeQuiz
- 04Literal-TypenAufgabeQuiz
- 05Intersection-Typen ('&')AufgabeQuiz
- 06Kombinieren von Typ-AliasenAufgabeQuiz
- 07Zusammenfassung: Fortgeschrittene Typ-KombinationenAufgabe
Typisierung von Objekten und Interfaces
8 Lektionen757- 01Inline-Typanmerkungen für ObjekteAufgabeQuiz
- 02Type-Aliase für ObjekteAufgabeQuiz
- 03Einführung in InterfacesAufgabeQuiz
- 04Interfaces vs. Type-AliaseQuiz
- 05Optionale & Readonly-EigenschaftenAufgabeQuiz
- 06Erweitern von Interfaces und TypenAufgabeQuiz
- 07Methoden zu Interfaces hinzufügenAufgabeQuiz
- 08Zusammenfassung: Objektstrukturen definierenAufgabe
Projekt: Eine einfache Aufgabenliste
Projekt6 Lektionen18- 01Projekt: Task-Struct definierenAufgabeQuiz
- 02Funktion zum Hinzufügen einer AufgabeProjekt
- 03Funktion zum Ändern des AufgabenstatusProjekt
- 04Funktion: Aufgaben nach Status auflistenProjekt
- 05Funktion: Aufgabenübersicht ausgebenProjekt
- 06Alles zusammenfügenProjekt
Enums
6 Lektionen638- 01Was ist ein numerisches Enum?AufgabeQuiz
- 02Numerische Enums verwendenAufgabeQuiz
- 03Was ist ein String-Enum?AufgabeQuiz
- 04String-Enums verwendenAufgabeQuiz
- 05Heterogene EnumsAufgabeQuiz
- 06Zusammenfassung: Enums verwendenAufgabe
Generics: Ein erster Blick
6 Lektionen537- 01Das Problem, das Generics lösenQuiz
- 02Erstellen einer generischen Identity-FunktionAufgabeQuiz
- 03Verwenden einer generischen FunktionAufgabeQuiz
- 04Generische ArraysAufgabeQuiz
- 05Generische InterfacesAufgabeQuiz
- 06Zusammenfassung: Praxis mit generischen FunktionenAufgabe
Projekt: Bestandsverwaltung
Projekt5 Lektionen18- 01Projekt: Generisches Inventar-ElementAufgabeQuiz
- 02Funktion: Elemente zum Inventar hinzufügenProjekt
- 03Funktion zum Finden eines Elements nach IDProjekt
- 04Spezifischen Inventartyp erstellenProjekt
- 05Funktion zum Abrufen von ElementdetailsProjekt
Fortgeschrittene Themen
6 Lektionen642- 01Type AssertionsAufgabeQuiz
- 02Type Guards: in & instanceofAufgabeQuiz
- 03Der 'never'-TypAufgabeQuiz
- 04Nullable Types ('strictNull')AufgabeQuiz
- 05Index-Signaturen für ObjekteAufgabeQuiz
- 06Recap: Typen verfeinernAufgabe
- Abschnitt 4Objektorientierte Programmierung56 Lektionen
Why learn TypeScript with Coddy
- Write TypeScript in your browser. No
tscinstall, no editor setup, notsconfig.jsonto wrangle. The editor and output sit side-by-side so you see what each type does instantly. - Modern TypeScript: type annotations, interfaces, generics, union and intersection types, narrowing, utility types, and how TS layers on top of plain JavaScript without changing what runs at runtime.
- AI hints help you read TypeScript errors - the famously long ones - without spoiling the fix, so you build the mental model that makes future TS code easier to write.
- Free TypeScript certificate when you finish the section. A credible signal that you can read and write idiomatic TS, not just JavaScript with sprinkled types.
Frequently asked questions about learning TypeScript
What is TypeScript?
TypeScript is a superset of JavaScript that adds optional static typing. Valid JavaScript is valid TypeScript, but TS lets you annotate variables, function parameters, and return values with types - the compiler then catches mistakes before your code runs. At runtime, TypeScript compiles down to plain JavaScript.
Is TypeScript hard to learn?
If you're comfortable with JavaScript, the basics of TypeScript are quick to pick up - adding
: string or : number to a few variables and you're already writing TS. The trickier parts (generics, conditional types, mapped types, narrowing) take longer, and this course introduces them in small steps with hands-on examples.Do I need to know JavaScript before TypeScript?
Yes. TypeScript is JavaScript with types on top, so the language you're really learning is JS. This TypeScript section is part of the JavaScript journey for that reason - you can take the JS sections first, or jump straight to TS if you're already comfortable with modern JavaScript.
What's the difference between TypeScript and JavaScript?
JavaScript is dynamically typed - a variable can hold a string today and a number tomorrow, and you only find out at runtime. TypeScript adds a static type layer that runs at build time, catching type mismatches before the code ships. The compiled output is still plain JavaScript, so it runs anywhere JS does.
Can I learn TypeScript online for free?
Yes. The interactive TypeScript section is free - full lessons, coding exercises, quizzes, and a certificate. The editor runs in your browser with the TS compiler built in, so you don't need to install
tsc, Node, or any tooling to start writing TypeScript.Do I get a certificate after the TypeScript course?
Yes. Finishing the TypeScript section gives you a free certificate of completion you can share on LinkedIn or include on your resume. A verifiable signal that you've worked through structured, hands-on TypeScript material, not just watched tutorials.