Mit folgendem Programm werden die Zahlen von 1 bis 10 ausgegeben. Dazu wird eine Zählvariable i mit einem Startwert von 0 festgelegt. Die Wiederholungsschleife soll solange wiederholt werden, bis i nicht mehr kleiner als 11 ist. Dazu wird bei jedem Schleifendurchlauf die Variable i um 1 erhöht (i++).
Die Werte können beliebig geändert werden.
Eine Schleife kann auch rückwärts laufen.
Die Zählvariable kann im Anweisungsblock z.B. für Rechnungen verwendet werden.
Eine Wiederholungsschleife kann auch mit dem Schlüsselwort while notiert werden.
wiederhole solange(Bedingung) {
// Anweisungen
}
In JavaScript wird das wie folgt notiert:
while(...) {
// Anweisungen
}
Die while-Schleife läuft solange, bis die Bedingung in der Klammer den Wert false bekommt.
Schreibt man ein Programm, in welchem die Bedingung nie den Wert false bekommt, hat man eine Endlos-Schleife, die immer weiter läuft und den Browser blockiert. Wenn man beim folgenden Programm auf "Ausführen..." klickt, hängt sich der Browser auf, man muss den Tab schließen und die Seite neu aufrufen.
Es ist wichtig dafür zu sorgen, dass die Bedingung in der while-Schleife sicher den Wert false bekommen kann.
Eine Wiederholungsschleife kann auch mit den Schlüsselworten do und while notiert werden.
Die do-while-Schleife wird mindestens einmal ausgeführt, auch wenn die Bedingung hinter while bereits falsch ist.
Mit Hilfe der Anweisung break; kann die Ausführung einer Wiederholungsschleife vorzeitig beendet werden.
Eine while-Schleife kann auch mit der break-Anweisung abgebrochen werden.
Wenn in einer for-Schleife ein Durchlauf übersprungen werden soll, dann kann das mit der Anweisung continue erreicht werden. Im folgenden Beispiel werden zwei Zahlen ausgelassen.
Bei folgender while-Schleife wird die continue-Anweisung ausgeführt und die Schleife springt zur Bedingung. Da die Zählvariable nicht mehr vergrößert wird, springt die while-Schleife endlos zwischen continue und Bedingung hin und her.
let a = 0;
while(a < 20){
if(a == 8){
continue;
}
clog(a);
a++;
}
Bei einer while-Schleife muss also zuerst die Zählvariable verändert werden, bevor die continue-Anweisung erreicht wird. Dann funktioniert auch in der while-Schleife das Überspringen einzelner Schleifen-Durchläufe.
Schreibe ein Programm mit einer for-Schleife, welche die Zahlen zwischen 0 und 20 ausgibt, die Zahlen 8 und 13 auslässt und bei 18 die Schleife abbricht.