Javascript oder Typescript?

3 Antworten

Ave!

Die Unterschiede von JavaScript zu TypeScript sind marginal.

TypeScript ist nichts anderes als ein Compiler, der den Programmcode in reines JavaScript kompiliert.

Das bedeutet alles, was du in TypeScript programmierst wird in JavaScript umgewandelt.

Nun stellt sich die Frage, wozu das ganze..

Nun, die Antwort ist simpel: Während JavaScript eine dynamische Programmiersprache ist und es egal ist, welchen Typ eine Variable besitzt und der Typ jederzeit frei wechseln kann, erweitert TypeScript dem Namen gerecht JavaScript um die Möglichkeit Variablen zu Typisieren, wie es in den großen Sprachen (C#, Java, C++) auch der Fall ist.

Ein kleines Beispiel hierzu:

JavaScript

let output = "Hello, World!";
console.log(output); // Ausgabe: Hello, World!
output = 42;
console.log(output); // Ausgabe: 42

Hier können wir also die Variable "output" zuerst als String initialisieren und diesen Typ später frei, ohne lästige Konvertierungen auf "Integer" (->42) ändern.

Exakt das gleiche Programm führt in TypeScript zu folgendem Fehler beim Versuch den Code zu kompilieren:

index.ts:3:1 - error TS2322: Type 'number' is not assignable to type 'string'.

3 output = 42;

Wir können in TypeScript also nicht einfach den Typ einer Variable ändern.

Nun stellt sich die nächste Frage: Wieso will man es so kompliziert, wenn JavaScript es uns doch so einfach macht?

Auch hier gibt es eine kurze, simple Antwort: Fehlerminimierung in größeren Projekten.

Besonders wenn man mehrere Variablen mit gleichem Namen nur in unterschiedlichen Scopes nutzt minimieren wir durch die Typisierung die Gefahr einen Wert der falschen Variable zuzuweisen oder diese zu überschreiben.

Soll ich beides für die Zukunft lernen oder reicht javascript?

Lern JavaScript bis aufs Mark und erst wenn du alles an JavaScript verstehst, kannst du zu TypeScript übergehen.

Beides parallel oder TypeScript als erste Sprache zu lernen wird dich nur unnötig verwirren.

Kannst du JavaScript, hast du TypeScript in ein paar Tagen vollständig verstanden.

Ohne JavaScript auch kein Typescript. Typescript baut auf JavaScript auf und ist deshalb ein JavaScript-Framework. JavaScript solltest du auf jeden fall lernen wenn auf Besucher und Ereignisse des Browser reagieren möchtest. Typescript wird dafür nicht benötigt, kann aber später genutzt werden um komplexe Webprojekte umzusetzen.

Woher ich das weiß:Studium / Ausbildung

Typescript und Javascript ist das gleiche, nur dass typescript wie es im Namen steht Typen unterstützt, soll heißen, Klassen, Vererbung, und den ganzen spaß.

Wenn du typescript lernst, dann lernst du Javascript (un)freiwillig mit.

MagisterSamael  27.02.2023, 22:48

Was haben nun Klassen und Vererbung mit Typisierung zutun?

JavaScript selbst ist eine Objektorientierte Sprache und besitzt diese Mechaniken.

Deine Antwort ergibt keinen Sinn, weil du vermutlich keine Ahnung hast wo der Unterschied liegt.

0
regex9  28.02.2023, 00:50
  1. Auch in JavaScript gibt es Datentypen sowie Konzepte wie die Vererbung.
  2. Wenn man TypeScript lernt, lernt man nicht automatisch auch JavaScript. Neben den Unterschieden in der Syntax, verfolgt man auch andere Ansätze.
0