Valore all'ultimo ciclo
importanza: 3
Qual è l’ultimo valore mostrato da alert in questo codice? Perché?
let i = 3;
while (i) {
alert( i-- );
}
La risposta è: 1
.
let i = 3;
while (i) {
alert( i-- );
}
Ogni iterazione del ciclo decrementa i
di 1
. Il controllo while(i)
interrompe il ciclo quando i = 0
.
Quindi, gli step del ciclo sono (“loop unrolled”):
let i = 3;
alert(i--); //mostra 3, decrementa i a 2
alert(i--) // mostra 2, decrementa i a 1
alert(i--) // mostra 1, decrementa i a 0
// finito, `i` è ora 0, che convertito a booleano è falso