TypeScript Fundamentos Básico
Tipos básicos
Em TypeScript, os tipos básicos permitem descrever a forma dos dados que usamos. Os mais comuns são string, number e boolean, que representam texto, números e valores lógicos. Além deles, temos arrays (listas de um tipo) e tuplas (listas com tamanho e tipos fixos).
O TypeScript também possui os tipos any e unknown. any desliga a verificação de tipos, permitindo qualquer operação sem erros de compilação. Já unknown é mais seguro: você pode atribuir qualquer valor a uma variável unknown, mas só pode usá-la após verificar seu tipo (por exemplo, com typeof).
A inferência é um recurso poderoso: o compilador deduz o tipo de uma variável a partir do valor inicial, sem que você precise anotá-lo explicitamente. Isso mantém o código conciso e ainda garante segurança. Neste card, exploramos esses conceitos com exemplos práticos.
Pontos-chave
string,numberebooleansão os tipos primitivos mais usados.- Arrays armazenam vários valores do mesmo tipo:
number[]ouArray<number>. - Tuplas definem um array com tamanho e tipos fixos, ex.:
[string, number]. anydesativa a checagem de tipos;unknownexige verificação antes do uso.- A inferência de tipos deduz o tipo a partir do valor atribuído, sem anotação explícita.
// tipos_basicos.ts
// Exemplo de tipos básicos em TypeScript
// string, number, boolean
let nome: string = "Ana";
let idade: number = 28;
let ativo: boolean = true;
// array de números
let notas: number[] = [7.5, 8.0, 9.5];
// tupla: primeiro elemento string, segundo number
let pessoa: [string, number] = ["Carlos", 42];
// any: aceita qualquer valor, sem checagem
let qualquer: any = 10;
qualquer = "texto"; // ok
// unknown: aceita qualquer valor, mas exige verificação
let misterio: unknown = "segredo";
if (typeof misterio === "string") {
console.log(misterio.toUpperCase()); // ok, é string
}
// inferência: o tipo é deduzido automaticamente
let cidade = "São Paulo"; // string
let populacao = 12300000; // number
console.log(`${nome} tem ${idade} anos.`);
console.log(`Ativo: ${ativo}`);
console.log(`Notas: ${notas.join(", ")}`);
console.log(`Pessoa: ${pessoa[0]} tem ${pessoa[1]} anos.`);
console.log(`Cidade: ${cidade} - População: ${populacao}`);