Se você precisar adicionar funcionalidade iterativa nativa a uma estrutura de dados bem encapsulada e personalizada, você deve usar iteradores JavaScript. Pode ser considerado uma maneira mais elegante de padronizar seus objetos personalizados.
Este artigo vai discutir iteradores em JavaScript. Também demonstraremos o uso de iteradores, iterables, Next () método e iteradores definidos pelo usuário. Então vamos começar!
Iteração em JavaScript
Em javascript, Iteração é um procedimento no qual uma coleção de estruturas ou instruções é repetida em uma sequência para um número predeterminado de vezes ou até que a condição adicionada seja verdadeira. Você pode utilizar rotações para iterar o conjunto especificado de instruções.
Por exemplo, declaramos uma matriz “contando”E com a ajuda do“para de”Loop, iremos iterar sobre a matriz especificada:
const conting = [1, 2, 3];Como resultado, cada valor será retornado e mostrado como saída:
Agora, vamos conferir o método para iterar sobre um objeto JavaScript. Para esse fim, em primeiro lugar, declararemos um objeto chamado “funcionário”E depois utilizar para de Loop para iterar sobre suas propriedades:
const funcionário = nome: 'Alex', designação: 'gerente';Como você pode ver, a saída do código acima foi exibido um “TypeError”Mensagem que afirma que“funcionário”Objeto não é iterável. Por que isso acontece? Encontramos o TypeError porque o para… de loop requer um objeto iterável para iterar sobre as propriedades do objeto.
Para lidar com a situação atual, você pode usar o protocolo de iteração JavaScript, que o ajudará a tornar um objeto iterável para reter suas propriedades.
Protocolo de iteração JavaScript
O JavaScript fornece um protocolo de iteração para iterar objetos. Este protocolo especifica o procedimento de iteração usando “para de" laço. Os iteradores JavaScript são divididos em dois componentes: “Iterables" e "Iteradores”:
Pode ser difícil para você entender o uso desses métodos de relance, por isso passaremos sequencialmente por cada um deles nas seções abaixo do rumo.
Método seguinte () em JavaScript
““próximo()”É um método de objeto iterador que é invocado para retornar o próximo valor na sequência de iteração. Este método compreende as duas propriedades a seguir:
Vamos definir um iterador personalizado em JavaScript e acessar os elementos de uma matriz sequencialmente usando o método Next ().
Criação de iterador definido pelo usuário em JavaScript
O JavaScript permite criar um iterador definido pelo usuário e invocar o “próximo()”Método para acessar os elementos do objeto iterável.
Aqui, definimos o “ShowElement ()”Método e retornará o“valor" e "feitoPropriedade do objeto iterável que é aceito como um argumento:
Função ShowElements (arr)Na próxima etapa, criaremos um “variedade”E depois passá -lo para o“ShowElement ()”Método como argumento. Então o "ShowElements ()”O método retornará um objeto iterável, ao qual armazenaremos em“Arriterator”:
const array = ['l', 'i', 'n', 'u', 'x'];Agora, cada vez que o “próximo()”O método é invocado com o“Arriterator”, Ele exibirá os valores do elemento de matriz em uma sequência com o definido“valor" e "feito”Propriedades:
console.log (Arriterator.próximo());Quando todos os elementos são iterados, o “valor”O valor da propriedade será definido como“indefinido", com "feito"Propriedade como"verdadeiro”:
A saída acima mencionada significa que criamos e executamos com sucesso um iterador definido pelo usuário em nosso programa usando o método Next (). Agora, vamos entender o conceito de iteráveis também e ter uma compreensão clara e profunda de Símbolo.iterator () em javascript
Exemplo: Criando iteradores a partir de iteráveis usando o símbolo.Método Iterator () em JavaScript
Neste exemplo, em primeiro lugar, declararemos uma matriz com os três valores a seguir:
Então, vamos invocar o “Símbolo.iterator ()”Método que retornará um objeto iterável e“Arriterator”Será armazenado seu valor:
const Arriterator = arr1 [símbolo.iterator] ();A execução do programa acima dado produzirá os iteradores da matriz:
Exemplo: Usando o método Next () sobre um objeto iterável em JavaScript
Este exemplo demonstrará o uso de “próximo()”Método para iterar sobre um objeto iterável. Para fazer isso, em primeiro lugar, criaremos um “variedade”E então invoca o“Símbolo.iterator ()”Método para retornar um objeto iterável:
Invocando o “próximo()”Também retornará um objeto com“valor" e "feito" valores de propriedade:
console.log (Arriterator.próximo());No final da sequência de iteração, o “feito"Propriedade do"próximo()”O método está definido como“falso”:
Exemplo: iterando através de iteráveis com o loop em javascript
O símbolo.iterator () O método é chamado automaticamente pelo para… de loop. Se você quiser invocar manualmente, pode usar o “enquanto”LOOP para iterar sobre o objeto iterável especificado.
Por exemplo, no exemplo abaixo, usaremos o “enquanto”LOOP para iterar sobre os objetos iteráveis retornados pelo“Símbolo.iterator ()”Método:
const array = ['l', 'i', 'n', 'u', 'x'];Aqui, a saída mostra o resultado retornado com “valor" e "feito”Propriedades do iterador:
Veja o diagrama a seguir para entender a relação entre o método iterables, Next () e iteradores em JavaScript:
Isso foi tudo sobre o uso básico de iteradores em JavaScript. Você pode explorar ainda mais de acordo com suas preferências.
Conclusão
Os iteradores em JavaScript são utilizados para loop sobre uma sequência de valores de objeto retornados pelo símbolo.Método iterator (). Esse processo também envolve a implementação do método Next () que retorna um objeto com o valor e as propriedades feitas, onde “valor”Representa o valor da sequência atual e“feito”Determina se a iteração é concluída ou não. Este artigo discutiu os iteradores JavaScript com a ajuda de exemplos adequados.