1
resposta

While

ao criar o while ele nao aceitou ponto e virgula no final dos códigos, mas sim virgula. eu nao entendi... alias ficou meio confuso pois desde que; comecei a aprender programação a unica estrutura de repetição que aprendi foi FOR( let i = 0; .......

1 resposta

O while recebe apenas uma condição que caso seja true, vai executar o bloco de código dentro de {}. O código dentro do bloco pode terminar em ponto e vírgula, mas a condição não.

O que é diferente no for, é que ele permite a inicialização de três grupos de uma única vez:

for (entraNoLoop; avaliadoCadaIteracao; executadoAoTerminoDeCadaIteracao)

Dentro de cada grupo, é possível separar com vírgula cada expressão, e pelo motivo dele permitir um ou mais, a separação dos grupos é feita com ponto e vírgula. Por exemplo, com o for loop você pode definir varias variaveis e incrementos de uma única vez:

let contador = 0;
let triplo = 3;
const valorFixo = 42;

while (contador < valorFixo) {
    console.log(`Iteração #${contador + 1} -> ${triplo}`);

    contador++;
    triplo *= 3;
}

for (let contador = 0, valorFixo = 42, triplo = 3; contador < valorFixo; contador++, triplo *= 3) {
    console.log(`Iteração #${contador + 1} -> ${triplo}`);
}