Naredbe "Break" i "Continue" su vezane za rad petlji, tj. za nameran izlaz iz ponavljajuće strukture petlji. Naredba "Break" prekida izvršenje tekuće "while" ili "loop" petlje, i prebacuje izvršenje programa na sledeću instrukciju, koja sledi odmah iza petlje. U sledećem primeru videćemo prekidanje izvršenja jedne "while" petlje, koja pri svakom izvršenju povećava vrednost varijable "i" za jedan, krećući od nule. Prekid i izlaz iz petlje izvršiće se kada varijabla "i" primi vrednost "3":
function probaBreak(x) {
var i = 0
while (i < 6) {
if (i == 3)
break
i++
}
return i*x
}
Na kraju po izlazu iz petlje vrši se množenje ulazne vrednosti "x" sa trojkom.
Naredba "Continue" prekida izvršenje bloka instrukcija unutar "while" ili "loop" petlji, i izvršenje programa prebacuje direktno na početak sledeće iteracije. Znači, za razliku od naredbe "Break", kod ove instrukcije nema izlaska iz same petlje, već izvršenje ostaje u njoj, a prebacivanje u okviru ove dve petlje je različito:
- Kod "while" petlje, "skače" se na uslov izvršenja petlje.
- Kod "for" petlje, "skače" se na uvećavajući izraz (sam početak).
U sledećem primeru videćemo rad instrukcije "continue" unutar "while" petlje:
i = 0
n = 0
while (i < 5) {
i++
if (i == 3)
continue
n += i
}
Kao što vidite, varijabla "i" je brojač koji se iz iteracije u iteraciju uvećava za jedan, a varijabla "n" vrši kumulativno zbrajanje vrednosti varijable "i". Da nema naredbe "continue" varijabla "n" bi imala sledeće vrednosti: 1, 3, 6, 10, ali pošto se naredbom "continue" iz zbira izbacuje trojka varijabla "n" će imati sledeće vrednosti: 1, 3, 7, 11.