AnyCompiler

Tipos Básicos

Os tipos primitivos principais do TypeScript são string, number e boolean. Você pode anotar o tipo de uma variável explicitamente com dois pontos, embora o TypeScript geralmente consiga descobrir o tipo sozinho.

let username: string = "Alice";
let age: number = 30;
let isStudent: boolean = false;

console.log(username, typeof username);
console.log(age, typeof age);
console.log(isStudent, typeof isStudent);
Output
Alice string
30 number
false boolean

Inferência de tipos

Você não precisa anotar cada variável — se você der a uma variável um valor inicial, o TypeScript infere seu tipo a partir desse valor automaticamente, e ainda assim vai detectar uma incompatibilidade depois exatamente como se você tivesse escrito a anotação você mesmo.

let city = "Tokyo"; // inferred as string, no annotation needed
console.log(city, typeof city);
Output
Tokyo string

Como é um erro de tipo real

Isso é genuinamente o que o compilador do TypeScript mostra quando você tenta atribuir o tipo errado — capturado de uma execução real, não escrito para parecer plausível:

let score: string = "high";
score = 42;
console.log(score);
Output
script.ts(2,1): error TS2322: Type '42' is not assignable to type 'string'.

Nada roda — nenhum resultado, só o erro. Esse é todo o ponto: o TypeScript te para aqui em vez de deixar um valor com tipo errado causar problemas silenciosamente em algum outro lugar do seu programa.

A seguir: arrays e tuples — coleções tipadas, e uma estrutura exclusiva do TypeScript sem equivalente real em JavaScript.