Pular para o conteúdo

A primeira escola especializada em tecnologia do Alto Solimões, com corpo técnico formado na área.

Módulo 3: Controle de Fluxo

for...of, break e continue

Percorrendo arrays e controlando loops

for...of --- percorrendo arrays

O for...of pega cada item do array direto, sem precisar de índice. É como passar por uma fila de pessoas; você fala com cada uma na ordem:

const nomes: string[] = ["Ana", "Bruno", "Carol"];

for (const nome of nomes) {
console.log(`Olá, ${nome}!`);
}
// → Olá, Ana!
// → Olá, Bruno!
// → Olá, Carol!

Muito mais limpo que for (let i = 0; i < nomes.length; i++).

Somando notas

const notas: number[] = [8.5, 7.0, 9.2, 6.8];
let total: number = 0;

for (const nota of notas) {
total += nota;
}

const média: number = total / notas.length;
console.log(`Média: ${média.toFixed(1)}`); // → Média: 7.9

break --- parar o loop

O break encerra o loop na hora. É como achar o que procurava é parar de procurar:

const nomes: string[] = ["Ana", "Bob", "Carlos", "Diana"];
const busca: string = "Carlos";

for (const nome of nomes) {
if (nome === busca) {
console.log(`${busca} encontrado!`); // → Carlos encontrado!
break;
}
}

Outro exemplo:

for (let i = 1; i <= 10; i++) {
if (i === 7) break;
console.log(i); // → 1, 2, 3, 4, 5, 6
}

continue --- pular uma volta

O continue pula o resto da volta atual e vai para a próxima. É como ignorar algo que não interessa:

const números: number[] = [12, -5, 8, -3, 20, 0, 15];

for (const num of números) {
if (num <= 0) continue; // pula negativos e zero
console.log(num); // → 12, 8, 20, 15
}

Só ímpares:

for (let i = 1; i <= 10; i++) {
if (i % 2 === 0) continue;
console.log(i); // → 1, 3, 5, 7, 9
}

Combinando break e continue

for (let i: number = 1; i <= 10; i++) {
if (i === 8) break; // para no 8
if (i % 2 === 0) continue; // pula pares
console.log(i); // → 1, 3, 5, 7
}

Exercício prático

Encontre o primeiro número primo no array é pare:

const números: number[] = [4, 6, 8, 9, 11, 15, 17];

for (const n of números) {
// Pule números menores que 2 com continue
// Verifique se é primo
// Se for primo, exiba e use break
}

Referências

Testa o que você leu

3 perguntas sobre esta aula. Errar aqui não custa nada - a explicação vem junto da correção.

Pergunta 1 de 3
Qual é a vantagem do `for...of` sobre o `for` clássico?