Instrukcija continue u JavaScript-u

Postoji i instrukcija continue, koja pokreće novu iteraciju petlje. Ova instrukcija ponekad može biti korisna za pojednostavljenje koda, iako se zadatak gotovo uvek može rešiti i bez nje. Pogledajmo na praktičnom primeru.

Pretpostavimo da imamo niz brojeva. Hajde da ga prođemo petljom i brojeve koji su deljivi sa 2, podignemo na kvadrat i ispišemo u konzolu, a brojeve koji su deljivi sa 3, podignemo na kub i ispišemo u konzolu. Evo rešenja opisanog zadatka:

javascriptlet arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];

for (let elem of arr) {
  let result;
  
  if (elem % 2 === 0) {
    result = elem * elem;
    console.log(result);
    
  } else if (elem % 3 === 0) {
    result = elem * elem * elem;
    console.log(result);
    
  }
}

Kao što vidite, linija console.log(result) se ponavlja dva puta. Hajde da je izvučemo van if, ovako:

javascriptlet arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];

for (let elem of arr) {
  let result;
  
  if (elem % 2 === 0) {
    result = elem * elem;
  } else if (elem % 3 === 0) {
    result = elem * elem * elem;
  }
  
  console.log(result); // izvukli smo ispis van uslova
}

Međutim, sada naš skript radi malo drugačije: ispostaviće se da će i za obične elemente, koje nismo obradili preko našeg if, biti izvršen ispis promenljive result u konzolu, što prema uslovu našeg zadatka nije potrebno.

Popravićemo problem dodavanjem našem if još jednog uslova else, koji će se aktivirati za elemente koji nisu deljivi sa 2 i 3, i pozvaćemo tu instrukciju continue, koja će nas odmah prebaciti na novu iteraciju petlje:

javascriptlet arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];

for (let elem of arr) {
  let result;
  
  if (elem % 2 == 0) {
    result = elem * elem;
  } else if (elem % 3 == 0) {
    result = elem * elem * elem;
  } else {
    continue; // prelazimo na novu iteraciju petlje
  }
  
  console.log(result); // izvršiće se ako je deljiv sa 2 ili 3
}
Задание 1

Napišite petlju koja će ispisati samo parne brojeve od 1 do 100, preskačući neparne pomoću continue.