Difference between TypeScript and JavaScript

JavaScript and TypeScript look very similar, but there's one important distinction.

The key difference between JavaScript and TypeScript is that JavaScript lacks a type system. In JavaScript, variables can haphazardly change form, while TypeScript in strict mode forbids this. This makes TypeScript easier to manage and maintain, especially with a large codebase.

JavaScript vs. TypeScript example

TypeScript's type system has a minor impact on how variables are referenced and declared, yet it has a huge impact on maintainability and consistency.

For example, here is how to declare numeric- and text-based variables in JavaScript:

let foo = 1
let bar = "text"
bar = 123 // allowed in JavaScript

Here are the same variables declared and initialized in TypeScript:

let foo: number = 1
let bar: string = "text"
bar = 123 // not allowed in TypeScript