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

  1. Recuperar/Percorrer um iterador
  2. Método next
  3. Criar um iterador

Um iterador, unidirecional, é tipo do dado que em seu conteúdo são armazenados referências para elementos de vetor, estrutura de dados dinâmica ou semelhantes.

Tab. 1: Abstração de um iterador
referência 0 referência 1 referência 2 (...) referência N
elemento 0 elemento 1 elemento 2 (...) elemento N

Para iterarmos um tipo de dado iterador utilizamos os comandos de repetição for of-in, por exemplo.

Sintaxe
for ( let [chave, valor] of <iteravel>){
 //corpo for
}

Para recuperarmos o iterador, precisamos invocar o método entries de alguma coleção que tenha suporte. Como exemplo, vamos utilizar a classe Array nativa:

Sintaxe
nome_array.entries();
Exemplo 1
let dados = [1,2,3,4];
iterador = dados.entries();
  
for ( let [chave,valor] of iterador)
  console.log(chave,":",valor);
Saída
0 : 1
1 : 2
2 : 3
3 : 4

Os comandos for-of e for-in invocam o métódo next internamente a cada loop/laço realizado nesses comandos.

Todo iterável deve implementar o método next que retorna próximo elemento contido no iterável. O acesso ao conteúdo de um iterador é feito de forma unidirecional.

Sintaxe
objeto = nome_iterador.next();
Onde
objeto: próximo valor índice/chave, valor e done indicando elemento existe.
Retorno
Objeto iterável no formato { value : [indice,valor], done : true ou false}
Exemplo 2
let dados = [1];
iterador = dados.entries();
proximo = iterador.next();
console.log(proximo);
console.log(proximo.value);
console.log(proximo.done);
Saída
{ value: [ 0, 1 ], done: false }
[ 0, 1 ]
false
  1. 15/08/2025 - revisão 3 - Ajustes: pontuais, remoção lixo e objetivos
  2. 26/09/2024 - revisão 2 - Adição de 'tab. 1'; correção: 'Recuperando um iterador'; ajustes pontuais
  3. 05/10/2023 - revisão 1 - Correção em layout, navegação, erros gramaticais
  4. 31/05/2023 - versão inicial