Questão FC373340
Considere o corpo de uma página HTML, conforme a seguir: <body> <p></p> <script> const valores = [900, 905, 902, 903, 908]; let x = ""; \(\underset{......}{I}\) ; document.getEleme
Desenvolvimento Web
FCC · 2023
Considere o corpo de uma página HTML, conforme a seguir:
<body>
<p></p>
<script>
const valores = [900, 905, 902, 903, 908];
let x = "";
\(\underset{......}{I}\) ;
document.getElementById("exibir").innerHTML = x;
function exibe(v, i, vs) {
x += v + "<br>";
}
</script>
</body>
Para que os valores contidos na array valores sejam exibidos, um abaixo do outro, a lacuna I deve ser corretamente preenchida por:
- call(exibe)
- valores.iterator(exibe)
- valores.forEach(exibe)
- call exibe(valores.value, valores.length, valores)
- exibe(valores.value, valores.length, valores)
Mostrar resposta e comentário
Gabarito
Certo
Comentário do professor
A lacuna deve ser preenchida por valores.forEach(exibe). O método forEach itera sobre cada elemento do array e chama a função de callback para cada item.
No código, a função exibe está definida como exibe(v, i, vs), onde v é o valor, i o índice e vs o próprio array. Cada chamada faz x += v + "<br>", acumulando os valores em linhas separadas.
Ao usar valores.forEach(exibe) você passa a referência da função (sem parênteses) para que o próprio forEach a invoque para cada elemento. A execução é síncrona, de modo que, ao final da iteração, document.getElementById("exibir").innerHTML = x exibirá todos os valores um abaixo do outro.
Conteúdo do catálogo FC Concursos · Atualizado em