TypeScript Coleções Básico
Arrays e tuplas
Em TypeScript, arrays são coleções de elementos do mesmo tipo, representados por T[] ou Array<T>. Diferente de JavaScript, o tipo do array é verificado em tempo de compilação, evitando misturar tipos incompatíveis.
Tuplas são arrays com tipo e quantidade fixos de elementos, onde cada posição pode ter um tipo diferente. Por exemplo, [string, number] representa um par de string e número. Tuplas nomeadas permitem rotular cada posição, melhorando a legibilidade: [nome: string, idade: number].
Arrays e tuplas podem ser declarados como readonly, impedindo alterações após a criação. Isso é útil para garantir imutabilidade e evitar efeitos colaterais indesejados.
Neste card, você aprenderá a declarar arrays e tuplas, usar tipos nomeados e aplicar readonly para proteger seus dados.
Pontos-chave
- Arrays em TypeScript são tipados:
number[]ouArray<number>. - Tuplas têm tamanho fixo e tipos específicos por posição.
- Tuplas nomeadas adicionam rótulos para clareza:
[x: number, y: number]. readonlyimpede mutações em arrays e tuplas.- Use
as constpara inferir tuplas literais imutáveis.
// Array tipado: só números
const numeros: number[] = [1, 2, 3];
// Array genérico: mesma coisa
const frutas: Array<string> = ['maçã', 'banana'];
// Tupla: primeiro string, segundo number
let pessoa: [string, number] = ['Ana', 30];
// Tupla nomeada: rótulos para clareza
let ponto: [x: number, y: number] = [10, 20];
// Array readonly: não pode ser modificado
const somenteLeitura: readonly number[] = [1, 2, 3];
// somenteLeitura.push(4); // Erro de compilação
// Tupla readonly com as const
const config = ['localhost', 8080] as const;
// config[0] = 'outro'; // Erro
console.log(numeros);
console.log(frutas);
console.log(pessoa);
console.log(ponto);
console.log(somenteLeitura);
console.log(config);