Skip to main content
eLearner.app
Module 5 · Lesson 1 of 417/32 in the course~10 min
Module lessons (1/4)

Loops: for and 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

Exercise#js.m5.l1.e1
Attempts: 0Loading…

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

Loading editor…
Show hint

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

Solution available after 3 attempts

Review exercise

Exercise#js.m5.l1.e2
Attempts: 0Loading…

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.

Loading editor…
Show hint

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

Solution available after 3 attempts