Читать книгу JavaScript – Das Handbuch für die Praxis - David Flanagan - Страница 127
5.4.1while
ОглавлениеSo wie die if-Anweisung die grundlegende Bedingungsanweisung von JavaScript ist, so ist die while-Anweisung die elementare Schleife. Sie hat folgende Syntax:
while (Ausdruck)
Anweisung
Bei der Ausführung einer while-Anweisung wertet der Interpreter zuerst den Ausdruck aus. Ist der Wert ein falsy-Wert, überspringt der Interpreter die Anweisung im Schleifenkörper und geht zur nächsten Anweisung im Programm. Ergibt der Ausdruck dagegen einen truthy-Wert, führt der Interpreter die Anweisung aus, springt zurück zum Beginn der Schleife und wertet den Ausdruck erneut aus. Mit anderen Worten: Der Interpreter führt die Anweisung so lange erneut aus, wie der Ausdruck einen truthy-Wert ergibt. Beachten Sie bitte, dass Sie mit der Anweisung while(true) eine Endlosschleife erzeugen können.
Normalerweise möchte man nicht, dass JavaScript genau die gleiche Operation immer und immer wieder ausführt. In fast jeder Schleife ändert sich beim Durchlaufen der Schleife – einer Iteration – mindestens eine Variable. Da sich die Variablen ändern, können sich bei jedem Schleifendurchlauf die Aktionen ändern, die bei der Ausführung der Anweisung durchgeführt werden. Spielen die sich ändernden Variablen im Ausdruck eine Rolle, kann dieser zudem bei jeder Iteration anders lauten. Das ist entscheidend, da sich andernfalls ein Ausdruck, der zu Anfang einen truthy-Wert ergibt, nie ändern und die Schleife deswegen niemals enden würde! Hier ein Beispiel für eine while-Schleife, die die Zahlen von 0 bis 9 ausgibt:
let count = 0;
while(count < 10) {
console.log(count);
count++;
}
Wie Sie sehen, hat die Variable count zu Beginn den Wert 0 und wird bei jeder Ausführung des Schleifeninhalts inkrementiert. Sobald die Schleife 10-mal ausgeführt wurde, wird der Ausdruck false (d.h., der Wert der Variablen count ist nicht mehr kleiner als 10), die while-Anweisung wird beendet, und der Interpreter kann zur nächsten Anweisung im Programm übergehen. Viele Schleifen haben eine Zählervariable wie count. Für Schleifenzähler werden häufig die Variablenamen i, j und k verwendet, aber Sie sollten aussagekräftigere Namen nutzen, falls Ihr Code dadurch verständlicher wird.