Kurzusok
/
JavaScript
JavaScript
/
Tanterv
/
While-ciklusok
Wh

While-ciklusok ebben a kurzusban: JavaScript

8 feladat

A(z) While-ciklusok fogalomról

Általános szintaxis

A while ciklussal addig futtathatsz ismételten kódot, amíg egy adott feltétel teljesül.

A while kulcsszó után egy kerek zárójelbe (()) tett feltétel áll, majd egy kapcsos zárójelbe ({}) tett kódblokk, amely a ciklus törzsét tartalmazza.

while (condition) {
  // code that is executed repeatedly as long as the condition is
  // true
}

A JavaScriptben van do-while ciklus is. Itt a feltételt a program a ciklustörzs végrehajtása után ellenőrzi. Ez akkor hasznos, ha a feltétel a törzsben elvégzett kiértékelésektől függ.

do {
  // The code here will always be executed once and then
  // repeatedly while the condition is true.
} while (condition);

Break

A ciklus törzsén belül a break kulcsszóval teljesen leállíthatod a ciklus végrehajtását. Ezt gyakran true feltétellel kombinálva használjuk. Így a ciklus törzsének bármely pontjáról szabályozhatod, hogy mikor álljon le a ciklus.

const winningNumber = 7;

while (true) {
  const num = readUserGuess();
  if (num === winningNumber) {
    break;
  }
}

A break kulcsszó nem használható a ciklusba ágyazott függvényen belül; erre példát az MDN dokumentációjában találsz.

Continue

A break-kel ellentétben a continue kulcsszó csak az aktuális iteráció végrehajtását állítja le, és a következővel folytatja. A continue segítségével gyakran elkerülheted, hogy a ciklustörzs nagy részét elágazásba csomagold.

let i = 0;

while (i < 100) {
  i = i + 2;

  if (i % 3 === 0) {
    continue;
  }

  // The code here will only be executed when i was not divisible
  // by 3 in the check above.
}

Végtelen ciklusok

Végtelen ciklus akkor jön létre, ha a ciklus feltétele mindig teljesül, és a ciklus törzsében nem érünk el break vagy return utasítást. A végrehajtást kívülről kell megszakítani. Attól függően, hogy milyen környezetben fut az ilyen kód, ez automatikusan megtörténik, vagy kézi beavatkozást igényel.

let i = 0;

while (i < 100) {
  if (i % 3 === 0) {
    continue;
  }

  i = i + 2;
}

// This loop runs forever since the variable i does not change
// anymore after it is divisible by 3 the first time.

Lehet, hogy ebben az egyszerű példában triviálisnak tűnik észrevenni a végtelen ciklust, bonyolultabb kódban viszont ez korántsem ilyen egyszerű. Jó gyakorlat alaposan végiggondolni, hogy a feltételed végül hamis lesz-e, illetve hogy eljut-e a végrehajtás a break vagy return utasításig.

Szerkesztés GitHubon A hivatkozás új ablakban vagy lapon nyílik meg

Tanuld meg a(z) While-ciklusok fogalmat