0Pricing
TypeScript Academy · Aula

Tuplas: arrays tipados de tamanho fixo

Defina tuplas para dados estruturados com posições conhecidas.

Tuplas: arrays tipados de tamanho fixo é uma aula grátis de TypeScript Academy no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de TypeScript Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de TypeScript Academy inclui 4 aulas no total.

Boas-vindas

Tuplas são vetores com um número fixo de elementos, em que cada posição tem um tipo específico. Elas são perfeitas para dados estruturados, como coordenadas ou pares de chave e valor.

Definindo uma tupla

Um tipo tupla lista o tipo de cada elemento na ordem. O comprimento é fixo e cada posição deve conter o tipo declarado.
const point: [number, number] = [10, 20];
const entry: [string, number] = ['age', 25];

Acessando elementos de uma tupla

Acesse os elementos de uma tupla pelo índice. O TypeScript conhece o tipo de cada posição.
const pair: [string, number] = ['Alice', 30];
const name: string = pair[0]; // string
const age: number = pair[1];  // number

Desestruturação de tuplas

Desestruturar uma tupla fornece a cada variável um tipo inferido específico com base na posição.
const [x, y]: [number, number] = [5, 10];
console.log(x + y); // 15

Tuplas versus vetores

Um vetor tem um número variável de elementos do mesmo tipo. Uma tupla tem um número fixo de elementos, possivelmente de tipos diferentes, em posições específicas.
const arr: number[] = [1, 2, 3, 4];   // variable length
const tup: [number, string] = [1, 'a']; // fixed: 2 elements

Elementos opcionais de tuplas

Marque um elemento de tupla como opcional com `?`. Os elementos opcionais devem vir depois dos obrigatórios.
type Named = [string, string?]; // name, optional nickname
const a: Named = ['Alice'];
const b: Named = ['Bob', 'Bobby'];

Elementos rest em tuplas

As tuplas podem ter um elemento rest que captura um número variável de elementos finais de um tipo específico.
type StringAndNumbers = [string, ...number[]];
const data: StringAndNumbers = ['scores', 90, 85, 78];

Elementos de tupla nomeados

O TypeScript 4.0 adicionou elementos de tupla nomeados. Os nomes melhoram a legibilidade sem afetar o sistema de tipos.
type Range = [start: number, end: number];
const r: Range = [0, 100];

Tuplas somente leitura

Adicione `readonly` para impedir a mutação de uma tupla após sua criação.
const origin: readonly [number, number] = [0, 0];
// origin[0] = 5; // Error

Tuplas como valores retornados por funções

Retornar uma tupla de uma função é um padrão usado em ganchos do React e em funções utilitárias para retornar vários values com tipos distintos.
function useCounter(): [number, () => void] {
  let count = 0;
  return [count, () => { count++; }];
}

Inferindo tuplas com as const

Sem `as const`, um literal de tupla pode ser ampliado para um tipo de matriz. Use `as const` para inferir o tipo exato da tupla.
const pair = [1, 'hello'] as const;
// type: readonly [1, 'hello'] — not (number | string)[]

Verificação rápida

O que o TypeScript infere para `const t = [1, 'hello']` sem nenhuma anotação?

Recapitulação

As tuplas definem matrizes de tamanho fixo com posições tipadas. Use-as para coordenadas, pares de chave e valor e funções que retornam vários values. Adicione readonly para impedir a mutação e as const para inferir tipos de tupla literais.

Perguntas Frequentes

A aula “Tuplas: arrays tipados de tamanho fixo” é grátis?

Sim — o texto completo de “Tuplas: arrays tipados de tamanho fixo” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de TypeScript Academy, atualize para CoddyKit PRO. O curso de TypeScript Academy inclui 4 aulas no total.

O que vou aprender em “Tuplas: arrays tipados de tamanho fixo”?

Defina tuplas para dados estruturados com posições conhecidas. Você pratica TypeScript Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar TypeScript Academy?

Nenhuma experiência prévia é necessária. TypeScript Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.

Quanto tempo leva a aula “Tuplas: arrays tipados de tamanho fixo”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de TypeScript Academy?

Sim. Cada aula de TypeScript Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Arrays tipados: T[] e Array
  2. Arrays Readonly e dados imutáveis
  3. Tuplas: arrays tipados de tamanho fixo
  4. Enumerações: constantes numéricas e de texto
← Voltar para TypeScript Academy