Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

[Dúvida] Elemento do forEach

itens.forEach((elemento) => { criaItem(elemento) })

Eu não entendi esse elemento no forEach, sei que o código interpreta o elemento sendo a array itens. Eu não entendi como ele interpreta isso. Sendo que se tu mudar o nome elemento para qualquer outro ele funcionaria pq ele chama por ele mesmo.

Não sei se ficou claro minha duvida...

3 respostas

Seria pq a função forEach capta o elemento dentro de itens

itens.elemento dps chama o msm?

solução!

Boa tarde Andrei, neste caso, o que esta sendo chamado de elemento, é o famoso CallBack da função. Em:

itens.forEach((elemento) => { criaItem(elemento) })

Estamos realizando uma interação para cada item do array Itens, chamado cada um destes itens de 'elemento'. Mas poderíamos utilizar qualquer nome, por exemplo 'el', 'item', 'andrei', 'rodrigo'. O CallBack é apenas uma referencia ao que esta dentro do array, não tem relação com o atributo do objeto.

const testArray = [
    {
        nome: 'nome1',
        elemento: 'valor 1
    },
        nome: 'nome2',
        elemento: 'valor 2',
    {
    },
        nome: 'nome3',
        elemento: 'valor 3'
    {
    }
]


testArray.forEach((meuObjeto) => {
    console.log(meuObjeto.nome);
    console.log(meuObjeto.elemento);
});

Neste exemplo, o console irá exibir

nome1
valor1
nome2
valor2
nome3
valor3

Inclusive se for o caso, pode chamar o callBack com o nome do atributo que não terá problema.

const testArray = [
    {
        nome: 'nome1',
        elemento: 'valor 1
    },
        nome: 'nome2',
        elemento: 'valor 2',
    {
    },
        nome: 'nome3',
        elemento: 'valor 3'
    {
    }
]


testArray.forEach((nome) => {
    console.log(nome.nome);
    console.log(nome.elemento);
});

O resultado no console será o mesmo.

errei aqui a msg aqui