Clique sobre os tópicos listados abaixo para navegar até o conteúdo desejado.

  1. Declarar Tuple
  2. Acessar elemento
  3. Alterar elemento
  4. Quantidade de elementos
  5. Percorrer um Tuple
  6. Tuple somente-leitura
  7. Tuple nomeado
  8. Métodos Tuple
  9. tuple e switch

Tuple é uma array tipado com tamanho, tipo de dado predefinido e elementos associados para cada um de seus índices.

Nesta parte do tutorial, vamos estudar as operações básicas sobre Tuple. Em Métodos Tuple serão vistos os métodos da classe Tuple.

A declaração de um Tuple em TS é feita utilizando [ e ] como delimitadores. Os tipos de dados para cada elementos são separados por (,).

Sintaxe
let nome_variavel:[ tipo_dado1 ,  tipo_dado2 ,  tipo_dadoN ];
let nome_variavel:[ tipo_dado1 ,  tipo_dado2 ,  tipo_dadoN ] = [ elem1, elem2, elemN ];
Exemplo 1
let tupla1:[number,string,boolean];
tupla1 = [1,'Fulano',true];

let tupla2:[number,string,boolean] = [1,'Fulano',true];
Saída
-

Como o Tuple é baseados em índice-zero, seus elementos podem ser acessados utilizando seus índices que são passados como argumentos para o indexador [].

Sintaxe
nome_variavel[indice];
Exemplo 2
let tupla:[number,string,boolean] = [1,'Fulano',true];
console.log(tupla[0]);
tupla[0] = 100;
console.log(tupla[0]);
Saída
2

Caso seja necessário recuperar todos os valores de um Tuple, podemos utilizar o operador []:

Sintaxe
[variavel1, variavel2, variavelN] = variavel_tupla;
Exemplo 3
let tupla: [cod:number,nome:string,cadastro:boolean] = [1,'Fulano',true];

let [a,b,c] = tupla; 

console.log(a,b,c);

let [d,,e] = tupla; //descartando 'Fulano'

console.log(d,e);

let [,,g] = tupla; //descartando 'Fulano' e 1

console.log(g);

Um Tuple em TS é mutável, dessa forma podemos acessar seus elementos utilizando seus índices como argumento do indexador [] e alterá-los atribuindo um novo valor com uso do operador (=).

Sintaxe
nome_variavel[indice] = valor;
Exemplo 4
let tupla:[number,string,boolean] = [1,'Fulano',true];

console.log(tupla[0]);
tupla[0] = 100;
console.log(tupla[0]);
Saída
1
100

Utilizando a propriedade/atributo length de um Tuple, conseguimos recuperar o seu tamanho ou número de elementos.

Sintaxe
nome_variavel.length;
Retorno
Number contendo o número de elementos de nome_variavel
Exemplo 5
let tupla:[number,string,boolean] = [1,'Fulano',true];

console.log(tupla.length);
Saída
3

Como os elementos de um Tuple é armazenado como uma array/vetor, utilizamos os comandos de repetição em conjunto com a propriedade length.

Exemplo 6
let tupla:[number,string,boolean] = [1,'Fulano',true];

for(let i = 0; i < tupla.length;i++)
    console.log(tupla[i]);
Saída
1 
"Fulano" 
true 

Para a criação de um Tuple somente-leitura, utilizamos a palavra reservada readonly. Dessa forma, o conteúdo de um Tuple não poderá ser alterado como visto anteiriormente.

Sintaxe
let nome_variavel: readonly [ tipo_dado1 ,  tipo_dado2 ,  tipo_dadoN ] = [ <elementos> ];
Exemplo 7
let tupla: readonly [number,string,boolean] = [1,'Fulano',true];

tupla[0] = 1;
Saída
Cannot assign to '0' because it is a read-only property.

A linguagem TS permite que um Tuple tenha seus elementos nomeados. Dessa forma, podemos ter noção do significado dos elementos de um Tuple.

Sintaxe
let nome_variavel: [ nome1:tipo_dado1 , nome2:tipo_dado2 , nome3:tipo_dadoN ] = [ <elementos> ];
Exemplo 8
let tupla: [cod:number,nome:string,cadastro:boolean] = [1,'Fulano',true];
Saída
-

Abaixo, uma tabela de métodos podem ser utilizados sobre o tipo de dado Tuple. Clique aqui para ir para a página dos métodos.

Método Descrição
concat Concatena um ou mais arrays
copyWithin Copia ou move um grupo de elementos
entries Retorna um iterador
every Executa uma função para todos elementos
fill Preencher elementos
filter Filtra elementos
find Busca primeiro elemento baseado em uma função
findIndex Busca primeiro índice de elemento baseado em função
forEach Executa uma função para todos os elementos
includes Verifica se um elemento está contido
indexOf Retorna índice de um elemento
join Retorna string contendo elementos unidos
keys Retorna todas as chaves/indices
lastIndexOf Retorna índica da última ocorrência de um elemento
map Cria novo array baseado no retorno de uma função
pop Remove último elemento
push Adiciona um elemento no fim
reverse Inverte a ordem dos elementos
shift Remover o primeiro elemento
slice Copia um intervalo de elementos
some Verifica se alguns elementos atendem critério
sort Ordena os elementos de um array
reduce -
reduceRight -
splice Remove um ou mais elementos
toLocaleString -
toString Retorna os elementos como string
unshift Adicionar um elemento no início
values -
  1. 29/08/2025 - revisão 3 - Ajustes: pontuais, tab. métodos, sintaxes, 'objetivos'
  2. 14/09/2024 - revisão 2 - Correção em link 'Métodos Tuple'; ajustes gramaticais
  3. 02/09/2024 - revisão 1 - Correção em links de objetivos e links de tabela de métodos
  4. 29/02/2023 - versão inicial