Considere uma página Web que contém o código JavaScript aseguir. < script > let text = ""; for (let i = 0; i < 5; i++) { text += " " + i ; } alert (text); < /script > O valor exibido pela execução desse script é
- A)0 0 0 0
Errada, porque o laço não repete o 0 quatro vezes; ele vai acrescentando os valores sucessivos de i.
- B)4
Errada, porque 4 é apenas o último valor de i antes da condição i < 5 falhar, não o conteúdo completo exibido.
- C)0 4
Errada, porque a execução gera mais números além de 0 e 4, já que o laço passa por todas as iteracoes intermediarias.
- D)1 1 1 1 1
Errada, porque o código não repete o 1 cinco vezes; ele concatena o valor atual de i em cada volta do for.
- E)0 1 2 3 4
Certa, porque o laço percorre i de 0 a 4 e concatena esses valores na string exibida pelo alert.
Gabarito: E
A questão cobra a leitura de um laço de repetição em JavaScript. O comando for começa com i = 0, continua enquanto i for menor que 5 e, a cada volta, soma 1 ao valor de i. Ou seja, o laço percorre os valores 0, 1, 2, 3 e 4. Em cada passagem, a linha text += " " + i concatena esse número ao texto, sempre com um espaço antes do valor. No início, text é uma string vazia. Depois da primeira volta, fica com " 0"; na segunda, " 0 1"; e assim por diante, até formar " 0 1 2 3 4". Ao final, o alert exibe essa sequência. É aquela situação clássica em que o computador não está inventando moda: ele só executa exatamente o que você mandou. O gabarito E está correto porque o laço vai de 0 até 4, sem incluir o 5, já que a condição é i < 5. Então aparecem os cinco valores em ordem crescente. Em linguagem de prova, o ponto decisivo é perceber a condição de parada e a concatenação acumulativa na variável text. Se você quiser uma leitura mais mental, pense assim: cada volta do for adiciona o número atual ao final da string. Como o i começa em 0 e termina antes de 5, o resultado final é a sequência 0 1 2 3 4.