CSS, HTML und Javascript mit {stil}

while-Schleifen

Javascript while und do-while

while-Schleifen wiederholen Anweisungen, solange die Bedingung true liefert. Wenn die Bedingung bei der ersten Abfrage nicht true liefert, wird die while-Schleife gar nicht erst ausgeführt.

Javascript do … while wiederholt Anweisungen, bis eine Bedingung nicht mehr zutrifft – false wird – auf jeden Fall aber einmal.

while (Bedingung) {
   Anweisungen;
}

Wenn die Bedingung false liefert, endet die Ausführung der while-Schleife und die Kontrolle wird an die Anweisungen nach der while-Schleife übergeben.

while

Auf jeden Fall muss sichergestellt werden, dass die Bedingung false wird, ansonsten entsteht eine unendliche Schleife.

Diese Schleife wird vier Mal durchlaufen:

var x = 1; 
while (x < 5) {
    console.log ('Lauf ' + x );
    x = x + 1;
}

Das Skript initialisiert die Variable x auf den Wert 1, bevor die while-Anweisung ausgeführt wird. Die while-Anweisung prüft die Bedingung (x < 5). Da 1 kleiner als 5 ist, durchläuft das Skript die while-Schleife ein erstes Mal.

Die letzte Anweisung im Block der while-Schleife zählt das x um eins herauf, so dass die Schleifenbedingung nach dem vierten Durchlauf nicht mehr zutrifft. In jeder while-Schleife muss die Schleifenbedingung geändert werden – ansonsten würde die Schleife endlos laufen oder der Browser abstürzen.

Javascript do … while

do {
   Anweisungen;
} while (Bedingung)

Die Anweisungen werden einmal durchgeführt, bevor die Bedingung geprüft wird. Wenn die Bedingung true liefert, werden die Anweisungen erneut ausgeführt. Am Ende jedes Laufs durch die Schleife wird die Bedingung abgefragt. Wenn die Bedingung false liefert, endet die Ausführung und die Kontrolle wird an die Anweisungen hinter der do ... while-Anweisungen übergeben.

do {
   text += "<div>" + x + ' mal 3 ist ' + (3*x) + "</div>"; 
   x = x + 1;
} while (x <= zahl);

break und continue in while-Schleifen

Es gibt immer wieder Ausnahmesituationen, in denen es effizienter ist, die while-Schleife vor ihrem Ende zu verlassen:

  • Entweder um den Rest des Code-Blocks auszulassen und sofort den nächsten Schleifendurchlauf zu beginnen,
  • oder um die Schleife vorzeit abzubrechen.

Dafür stellt Javascript die Anweisungen break (Schleife sofort abbrechen) und continue (sofort wieder an den Anfang der Schleife) zur Verfügung.