Schleifen


For-Schleife

Manchmal möchte man als Programmierer*in, dass Anweisungen eine genaue Anzahl oft durchgeführt werden sollen. Dafür gibt es in JavaScript die for-Schleife:

für (Variable festlegen; Vergleich mit Abbruchbedingung; Variable verändern)
{
    führe folgende Anweisungen aus
}

In JavaScript sieht das dann so aus:

for (var i = 1; i < 11; i++) {
    Anweisungen
}
  • Es wird eine Variable i = 1 festgelegt.
  • Dann wird in der Abbruchbedingung geprüft, ob i noch kleiner als 11 ist. Solange das der Fall ist, werden die Anweisungen in den geschweiften Klammern ausgeführt. Sobald i größer oder gleich 11 geworden ist, bricht das Programm die for-Schleife ab.
  • Im dritten Teil der Klammer wird die Variable i verändert, hier um eins erhöht.

for ist ein Schlüsselwort von JavaScript, muss also genauso geschrieben werden.

Beispiel

Im folgenden werden die Zahlen von 1 bis 10 ausgegeben. Versuche die Zahlen von 1 bis 15 auszugeben.

Die Zählvariable i kann auch vor der for-Schleife festgelegt werden:

Im ersten Teil der for-Klammer können auch mehrere Variablen festgelegt werden, um diese dann in der for-Schleife zu nutzen.

Man kann die Steuerung der for-Schleife auch vollständig aus der Klammer auslagern. Die Abbruchbedingung setzt man dann in eine if-Abfrage und beendet die Schleifenausführung mit der Anweisung break. Wozu man das machen soll weiß ich zwar nicht, aber gehen würde es.


While-Schleife

Eine zweite Möglichkeit, dass Anweisungen eine bestimmte Anzahl oft durchgeführt werden, ist die while-Schleife.

während (die bedingung wahr ist)
{
    führe folgende Anweisungen aus
}

In JavaScript sieht das dann so aus:

while (bedingung) {
    Anweisungen
}

Die Bedingung ist ein Vergleich, der wahr oder falsch sein kann. while ist ein Schlüsselwort von JavaScript, muss also genauso geschrieben werden.

Beispiel

Im folgenden werden die Zahlen von 1 bis 10 ausgegeben. Versuche die Zahlen von 1 bis 15 auszugeben.

Anmerkung

Wenn Du vergisst, die Variable, welche in der Bedingung verglichen wird, in der Schleife so zu verändern, dass die Abbruchbedingung erfüllt wird, führt der Computer die while-Schleife unendlich weiter aus, du hast eine Endlosschleife geschaffen. Wenn dein Programm stehen bleibt, prüfe, ob die Abbruchbedingung erreicht werden kann.


Do...While-Schleife

Man kann die while-Schleife so bauen, dass die Anweisungen mindestens einmal ausgeführt werden, obwohl die Bedingung in Klammern nie wahr wird. Dazu gibt es die do...while-Schleife.

tue
{
    führe folgende Anweisungen aus
} solange (die bedingung erfüllt ist);

In JavaScript sieht das dann so aus:

do {
    Anweisungen
} while (bedingung);

Die Bedingung ist ein Vergleich, der wahr oder falsch sein kann. do und while sind Schlüsselworte von JavaScript, müssen also genauso geschrieben werden.

Beispiel

Im folgenden werden die Zahlen von 1 bis 10 ausgegeben. Versuche die Zahlen von 1 bis 15 auszugeben.

Anmerkung

Wenn Du vergisst, die Variable, welche in der Bedingung verglichen wird, in der Schleife so zu verändern, dass die Abbruchbedingung erfüllt wird, führt der Computer die do...while-Schleife unendlich weiter aus, man hat auch hier eine Endlosschleife geschaffen. Wenn dein Programm also einfach stehen bleibt, prüfe, ob die Abbruchbedingung erreicht werden kann.


Break

Eine zusätzlich Abbruchbedingung kann jederzeit mit der Anweisung break; in eine Schleife eingebaut werden.

Beispiel 1

Hier sollte die do..while-Schleife eigentlich bis 10 zählen, aber bei 5 ist Schluss!


Beispiel 2

Hier sollte die for-Schleife eigentlich bis 10 zählen, aber bei 6 ist Schluss!


Continue

Möchtest Du, dass in einer for-Schleife bestimmte Schleifen ausgelassen werden, kannst Du die Anweisung continue; in die Schleife einbauen.

Wichtig! Die continue-Anweisung muss vor den Anweisungen in der der Schleife stehen, die ausgelassen werden sollen.

Beispiel 1

...funktioniert so nicht! Denn continue steht hinter der Anweisung text(...).

Beispiel 2

...funktioniert! Denn continue steht vor der Anweisung text(...).