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.
for (let i = 0; i < 4; i++) {
console.log(i); // 0, 1, 2, 3
}Equivalent in while style:
let i = 0;
while (i < 4) {
console.log(i);
i++;
}while
Checks the condition before each iteration.
let n = 10;
while (n > 0) {
n = Math.floor(n / 2);
}
n; // 0If 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.
let tentativi = 0;
do {
tentativi++;
} while (Math.random() < 0.0001); // pratica: provare almeno una volta
tentativi; // >= 1Try it
Define a function `sumUpTo(n)` that returns the sum 1+2+...+n (positive integer). Use a classic for.
Show hint
Start total at 0, then loop i from 1 to n inclusive.
Solution available after 3 attempts
Review exercise
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.
Show hint
Keep a counter and divide n by 2 while n > 1.
Solution available after 3 attempts