1
resposta

Parâmetro na função

            x.forEach(contador); 

            function contador(num){
                console.log(num);
            }

No código acima não entendi como a função "contador" consegue receber e usar o parâmetro "num" se o mesmo não é passado no x.forEach(contador);

Isso também aconteceu em um outro caso, desde já agradeço pela ajuda.

1 resposta

Fala aí Wllian, tudo bem? Bom, vamos lá:

A função .forEach recebe uma função como parâmetro, ela é chamada de callback.

Basicamente, por baixo dos panos, ele vai chamar essa função de calback e passar alguns parâmetros para ela, o primeiro, será cada item na lista.

Dessa maneira, o parâmetro está sendo passado e chagando na função contador, algo mais ou menos assim:

x.forEach(contador);

// primeira interação
// pega a primeira posição
// chama função de callback
contador(primeiraPosicao)

Obs: Tem outros parâmetros além do item.

Espero ter ajudado.