Pular para o conteúdo principal
eLearner.app
Módulo 5 · Lição 1 de 417/32 no curso~10 min
Lições do módulo (1/4)

Loops: for e while

Loops let you repeat a block of code. JavaScript has three classic forms: for, while, do…while. Use the first one when you know (or can compute) the number of iterations, the other two when you just need an exit condition.

Classic for

Three parts separated by ;: initialization, continuation condition, step.

JS
for (let i = 0; i < 4; i++) {
  console.log(i); // 0, 1, 2, 3
}

Equivalent in while style:

JS
let i = 0;
while (i < 4) {
  console.log(i);
  i++;
}

while

Checks the condition before each iteration.

JS
let n = 10;
while (n > 0) {
  n = Math.floor(n / 2);
}
n; // 0

If the condition is already false at the first round, the body is never executed.

do…while

Checks the condition after: the body is always executed at least once.

JS
let tentativi = 0;
do {
  tentativi++;
} while (Math.random() < 0.0001); // pratica: provare almeno una volta

tentativi; // >= 1

Try it

Exercício#js.m5.l1.e1
Tentativas: 0Carregando…

Define a function `sumUpTo(n)` that returns the sum 1+2+...+n (positive integer). Use a classic for.

Carregando editor…
Mostrar dica

Start total at 0, then loop i from 1 to n inclusive.

Solução disponível após 3 tentativas

Review exercise

Exercício#js.m5.l1.e2
Tentativas: 0Carregando…

Define `halveUntilOne(n)` that, given a positive integer, returns how many times you need to divide n by 2 (with Math.floor) before reaching 1 or less. Use a while.

Carregando editor…
Mostrar dica

Keep a counter and divide n by 2 while n > 1.

Solução disponível após 3 tentativas