JavaScript, zatímco smyčka


Obsah

    Zobrazit obsah


Smyčky mohou spustit blok kódu pokud je zadaná podmínka pravdivá.


Smyčka při

Smyčka while prochází blokem kódu tak dlouho, dokud je zadaná podmínka pravdivá.

Syntax

while (condition) {
      // code block to be executed
 }

Příklad

V následujícím příkladu bude kód ve smyčce běžet znovu a znovu, dokud proměnná (i) je menší než 10:

Příklad

while (i < 10) {
    text += "The number is " + i;
    i++;
}
 

Zkuste to sami →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript While Loop</h2>

<p id="demo"></p>

<script>
let text = "";
let i = 0;
while (i < 10) {
  text += "<br>The number is " + i;
  i++;
}
document.getElementById("demo").innerHTML = text;
</script>

</body>
</html>

Pokud zapomenete zvýšit proměnnou použitou v podmínce, smyčka nikdy neskončí. To způsobí zhroucení vašeho prohlížeče.


Smyčka dělat při

Smyčka do while je variantou smyčky while. Tato smyčka bude spusťte blok kódu jednou, než zkontrolujete, zda je podmínka pravdivá, pak to udělá opakujte cyklus, dokud je podmínka pravdivá.

Syntax

do {
      // code block to be executed
}
while (condition);

Příklad

Níže uvedený příklad používá smyčku do while. Smyčka bude vždy provedeny alespoň jednou, i když je podmínka nepravdivá, protože blok kódu se provede před testováním podmínky:

Příklad

do {
    text += "The number is " + i;
    i++;
 }
while (i < 10);

Zkuste to sami →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Do While Loop</h2>

<p id="demo"></p>

<script>
let text = ""
let i = 0;

do {
  text += "<br>The number is " + i;
  i++;
}
while (i < 10);  

document.getElementById("demo").innerHTML = text;
</script>

</body>
</html>

Nezapomeňte zvýšit proměnnou použitou v podmínce, jinak smyčka nikdy neskončí!



Porovnání for a zatímco

Pokud jste četli předchozí kapitolu o cyklu for, zjistíte, že smyčka while je téměř stejné jako cyklus for, s vynecháním příkazů 1 a 3.

Smyčka v tomto příkladu používá k vyzvednutí auta smyčku for jména z pole vozů:

Příklad

const cars = ["BMW", "Volvo", "Saab", "Ford"];
let i = 0;
let text = "";

for (;cars[i];) {
    text += cars[i];
   
i++;
}

Zkuste to sami →

<!DOCTYPE html>
<html>
<body>

<p id="demo"></p>

<script>
const cars = ["BMW", "Volvo", "Saab", "Ford"];

let i = 0;
let text = "";
for (;cars[i];) {
  text += cars[i] + "<br>";
  i++;
}

document.getElementById("demo").innerHTML = text;
</script>

</body>
</html>

Smyčka v tomto příkladu používá ke shromažďování smyčky while názvy vozů z pole vozů:

Příklad

const cars = ["BMW", "Volvo", "Saab", "Ford"];
let i = 0;
let text = "";
 
 while (cars[i]) {
    text += cars[i];
   
i++;
}

Zkuste to sami →

<!DOCTYPE html>
<html>
<body>

<p id="demo"></p>

<script>
const cars = ["BMW", "Volvo", "Saab", "Ford"];

let i = 0;
let text = "";
while (cars[i]) {
  text += cars[i] + "<br>";
  i++;
}

document.getElementById("demo").innerHTML = text;
</script>

</body>
</html>