ОЛА ПЕССОА! Hoje levantarei uma dirgaon a respeito do canceito de Iteração , um mecanismo que foi incultuído no es6 extremamente poderoso. Lá estava eu aprendendo esse canceito quando me deparei com um obstrento! MAS ANTES IREI DA UMA BREVE ВВЕДЕНИЕ ДЕССЕ МЕКАНИМСО.
Tradicionalmente antes do Addento Dos Métodos Auxiliares de iteração como os de array, semper usamos as Estruturas de repetição como для .. e пока .. Para Realizar Tarefas triviais no dia di di um desenvolvedor.
Agora com o Advento desse mecanismo no JS, Temos ancibilidade de Poder Percorrer в качестве эстратураса де Дадоса итеравейс Сем. Mas Sem Delongas, Vamos Ao Código!
UMA COISA QUE PRECISAMOS CONTENDENTENTE DE BOTAR A MãO NO CODIGO é Que O Conceito de Iteração é Depanido por wootros dois sub-conceitos: iteráveis E итерадоры Анкет FASICATEMETE PODEMOS CONTEND OS ITERáveis Como Sendo в качестве Estruturas de Dados Como: Массив, Карты, устанавливает e Strings que säo objetos nativos iteráveis por poarrão no js, e os итерадоры Sendo o objetos que sabem como percorrer esses iteráveis. Portanto você pode resumir que para cada estrutura iterável существует um iterador ossociado que sabe como acessar seus. Sabendo Disso Agora é SO Decolarmos O Foguete.
Vamos AOS Exemplos, Lobo abaixo Podemos definir um iterável do tipo array.
const bruxos = ['Harry Poter', 'Hermione Granger', 'Rony weasley']
Agora para gatemos o seu iterador, passamos a propriedade “symbol.iterador” entre colchetes, em seguida armazenamos seu iterador que é us objeto na constante iterador.
const bruxos = ['Harry Poter', 'Hermione Granger', 'Rony weasley'] const iterador = bruxos[Symbol.iterador]()
Agora Podemos Percorrer UM UM OS OS. Outro Detalhe é que podemos usar um método do objeto iterador Que gatemos wamado next () usado para ose os os do iterável semper que é hamado.
const bruxos = ['Harry Poter', 'Hermione Granger', 'Rony weasley']
const iterador = bruxos[Symbol.iterador]()
iterador.next() // retorna { value: 'Harry Poter', done: false }
iterador.next() // retorna { value: 'Hermione Granger', done: false }
iterador.next() // retorna { value: 'Rony weasley', done: false }
iterador.next() // retorna { value: undefined, done: true }
Perceba que para cada hamada do () temos o retorno de um objeto com duas propriedades, value que guarda o valor do nndice do a que armazena um boleano que inda se toda astrutura já foi acessada. Примечание que na ultima chamada o do do objeto retornado armazena um true indando que aestrutura já foi toda acessada.
Bom, Essa foi uma internução rápida sobre o mecanismo, mais para que que ainda não conhecia ficar por dentro да новичок. Recomendo fortemente da uma olhada na documentação Protocolos de iteração Na Mdn pra expandir seu conhecimento.
Tendo Contextualizado UM Pouco O Assunto, Vamos Voltar Naquela Minha Duvida Que Mencionei Logo Inicio.
Perceba Que nas ultimas duas linhas descritas a seguir:
iterador.next() // retorna { value: 'Rony weasley', done: false }
iterador.next() // retorna { value: undefined, done: true }
O Que não ficou muito claro, pelo menos na minha percepcáo, foi aempidade de termos que chama o next (para gatemos no objeto retornado em sua propriedad На Чамада передняя, о Кью Фария Майс Сендо. Бом, Deixo Aqui Essa обсудить пара Podemos chegar em uma urlusão juntos. Valeu Devs!
Оригинал: “https://dev.to/arlonvinicius/mecanismo-de-iteracao-no-js-e-talvez-um-possivel-bug-19fi”