Deklarowanie zmiennych w JavaScript bez przypisywania im określonego typu w momencie deklaracji jest zaskakujące dla wszystkich osób, które mają doświadczenie z innymi językami programowania i rozpoczynają swoją przygodę z JS. Ten stan rzeczy zmienił się dzięki TypeScript-owi, dzięki któremu każda zmienna może mieć określony typ. Wprawdzie po kompilacji typowanie i tak znika z kodu co prześledzić można na stronie: https://www.typescriptlang.org/ play/index.html jednak w momencie tworzenia kodu mechanizm ten pozwala uniknąć programiście wiele problemów.
Język TypeScript, który z kolei oparty jest na najnowszym EcmaScript6 wprowadzony został jako bazowy dla AngularJS 2.0. EcmaScript6 wprowadził do JavaScriptu m.in. Class czy tzw. Arrow Functions ( => ). Angular 2 to również programowanie reaktywne oparte o RxJs oraz polecany przez twórców Angulara Visual Studio Code, który znacząco ułatwia pisanie kodu.

TypeScript - Visual Studio Code Visual Studio Code podpowiada jakie właściwości można wykorzystać na tablicy.

Typy danych w TypeScript

Boolean

let variaType1: boolean = true;

Number

let variaType2: number = 3;

String

let variaType3: string = "Some text";

Array

let variaType4: number[] = [3, 6, 9];
let variaType4: Array = [3, 6, 9];

Mieszane typy

let variaType5: [number, string] = [9, "Some text"];
function mixedType(value: string | number) {
}

Any

let variaType6: any = 11;
let variaType6: any = false;
let variaType6: any[] = [11, true, "Some text"];

Void – nie zwraca wartości

function warnUser(): void {
    alert("Jakiś ważny komunikat");
}

Optional

function somefn(x: number, y?: number) {
     return x + (y || 0);
}
somefn(1); //OK
somefn(1, undefined); //OK

Type

type NameOrNameArray = string | string[];
function createName(name: NameOrNameArray) {
   if (typeof name === "string") {
     return name;
   }
}

Interface

interface House {
    color?: string;
    rooms?: number;
}

function checkHouse(show: House) {
console.log(show.color);
console.log(show.rooms);
}

let myHouse = checkHouse({"red", 5});

TypeScript - Visual Studio Code Visual Studio Code wskazuje na błąd w trakcie pisania kodu.

Modyfikatory dostępu

public

public – wszystkie zmienne i wyrażenia wewnątrz klasy domyślnie, są typu public czyli istnieje do nich dostęp z zewnątrz (nie trzeba tego dopisywać)

private

private – brak dostępu do tak oznaczonej zmiennej spoza danej klasy

protected

protected – podobnie do private z tą różnicą, że do zmiennej protected będą miały instancje klas pochodnych