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

Valor em um array

Como o parâmetro ''campo'' pega o valor dentro do array? É da propriedade do forEach?

 campos.forEach(function(campo){
        const td = document.createElement('td')
        td.textContent = campo.value
        tr.appendChild(td)
    })
3 respostas

Opa, e aí mbthales.

Então cara, quando temos que percorrer um array, no caso, passar valor por valor de um array, temos que percorrer esse array através de uma estrutura de repetição, normalmente é utilizado a estrutura de repetição FOR.

Podemos utilizar da forma mais old (acho que podemos chamar assim), que neste caso consiste em declarar um índice e através desse índice acessar o elemento dentro do array e no final acrescentar esse índice.

Poderíamos fazer assim:

for(let i = 0; i < array.lenght; i++){
    console.log(array[i])
}

Mas também existem outros jeitos de percorrer o array, como você já citou o forEach. Com ele você escreve menos para percorrer os array. Nele nós não controlamos o índice, é a própria funcão que por de baixo dos pano faz isso pra gente. Então dado o exemplo abaixo:

var array = [1, 2, 3, 4, 5];
array.forEach(function(valor) {
    console.log(valor);
});

Ele vai fazer tudo sózinho para gente, ele vai começar a pegar o elemento da posição 0 e jogar para função que definimos como callback, depois ele vai iterar o índice que ele usa e jogar o próximo elemento para nós.

É isso aí, espero que tenha ajudado.

solução!

Boa tarde! Como vai?

De forma simples e direta, perceba que o responsável por invocar a função passada como parâmetro para o forEach() é o próprio JavaScript! Sendo assim, ele mesmo irá passar o valor do parâmetro campo como sendo cada item do seu array a cada iteração da repetição! Outras duas coisas importantes a serem observadas é que o nome campo poderia ser outro qualquer que vc quisesse e, além desse parâmetro, a função passada ao forEach() também pode receber o índice da iteração!

Exemplo prático:

const meuArray = [1, 2, 3, 4, 5];

meuArray.forEach(function (valor, indice) {
     console.log(indice, valor); // Imprime o índice da iteração junto com cada item do array.
});

O resultado sera:

0 1
1 2
2 3
3 4
4 5

Pegou a ideia? Qualquer coisa é só falar!

Grande abraço e bons estudos, meu aluno!

Muito obrigado pelas respostas. Me ajudaram muito!