Vai al contenuto
eLearner.app
Modulo 5 · Lezione 1 di 417/32 nel corso~10 min
Lezioni del modulo (1/4)

Loop: for e while

I loop ti permettono di ripetere un blocco di codice. JavaScript ne ha tre forme classiche: for, while, do…while. Usi la prima quando sai (o calcoli) il numero di iterazioni, le altre due quando ti basta una condizione di uscita.

for classico

Tre parti separate da ;: inizializzazione, condizione di continuazione, passo.

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

Equivalente in stile while:

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

while

Verifica la condizione prima di ogni iterazione.

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

Se la condizione è falsa già al primo giro, il corpo non viene mai eseguito.

do…while

Verifica la condizione dopo: il corpo viene sempre eseguito almeno una volta.

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

tentativi; // >= 1

Prova tu

Esercizio#js.m5.l1.e1
Tentativi: 0Caricamento…

Definisci una function `sumUpTo(n)` che restituisca la somma 1+2+...+n (intero positivo). Usa un for classico.

Caricamento editor…
Mostra suggerimento

Inizia total a 0, poi cicla i da 1 a n inclusi.

Soluzione disponibile dopo 3 tentativi

Esercizio di ripasso

Esercizio#js.m5.l1.e2
Tentativi: 0Caricamento…

Definisci `halveUntilOne(n)` che, dato un intero positivo, restituisce quante volte devi dividere n per 2 (con Math.floor) prima di arrivare a 1 o meno. Usa un while.

Caricamento editor…
Mostra suggerimento

Mantieni un contatore e divide n per 2 finché n > 1.

Soluzione disponibile dopo 3 tentativi