Repetições

E mais uma vez

let repeticoes = 5
for (let i = 0; i < repeticoes; i++) {
	console.log(i)
}
> 0 > 1 > 2 > 3 > 4

Essa estrutura de repetição é chamada só de for.

let i = 0 é executado uma vez antes de todo o resto, ciando a variável i que começa em 0. O nome de variável i é bem comum nesse cenário mas também pode ser alterado.

i++ é a mesma coisa do que i = i + 1, acontece no final de cada iteração. O resultado é que i vai subindo de 1 em 1.

i < repetições funciona exatamente como no while: A condição é checada no começo de cada iteração e quando for falsa, o código vai parar de reexecutar. Nesse caso parou logo quando i chegou a 5, pois 5 < 5 é falso, de forma que i nunca teve o valor 5 dentro do bloco de código.

O while consegue fazer as mesmas coisas do que o for, porém o código fica mais diseperso. E como o while é mais genérico, usar for transmite melhor o seu objetivo. Este aqui é equivalente ao do começo da página:

let repeticoes = 5
let i = 0
while(i < repeticoes) {
	console.log(i)
	i++
}
> 0 > 1 > 2 > 3 > 4

Em relação ao for of, o for é mais difícil de usar, mas oferece mais liberdade. Permite modificar o valor inicial:

for (let i = 6; i < 9; i++) {
	console.log(i)
}
> 6 > 7 > 8

Ainda pode ser usada com uma lista:

let emojis = ["😐", "🥶", "😡", "😱"]
for (let indice = 0; indice < emojis.length; indice++) {
	console.log(emojis[indice])
}
> "😐" > "🥶" > "😡" > "😱"

E diferente de um for of, pode alterar uma lista:

let documentos = ["RG", "CNH", "Passaporte"]
for (let i = 0; i < documentos.length; i++) {
	documentos[i] = false
}
console.log(documentos)
> [false, false, false]