while

Die while-Anweisung (Engl. statement) beschreibt eine Schleife, die solange durchlaufen wird wie die Schleifenbedingung wahr (Engl. true) ergibt. Die Schleifenbedingung (Engl. condition) wird am Anfang der Schleife ausgewertet.

Syntax

while (condition) {
  statement
}
condition
Die Schleifenbedinung wird zu Anfang eines Schleifendurchlaufs ausgewertet. Ergibt die Auswertung wahr (true), dann wird der Schleifenkörper durchlaufen (statement wird ausgeführt). Ist die Bedingung falsch (false), dann fährt das Program mit der ersten Anweisung nach der while Schleife fort.
statement
Eine optionale Anweisung wird ausgeführt solange die Bedingung wahr (true) ist. Mehrere Anweisungen müssen in einer block Anweisung ({ ... }) gruppiert werden.

Bemerkung: Ein break-Statement kann eingesetzt werden, um die Schleife vorzeitig zu beenden, bevor die Bedingung auf false wechselt.

Beispiele

Die folgende while Schleife wird so oft durchlaufen wie n kleiner drei ist.

var n = 0;
var x = 0;

while (n < 3) {
  n++;
  x += n;
}

In jedem Durchlauf wird n inkrementiert und zu x addiert. Die Schleifendurchläufe können wie folgt beschrieben werden:

  • Nach 1. Durchlauf: n = 1 und x = 1
  • Nach 2. Durchlauf: n = 2 und x = 3
  • Nach 3. Durchlauf: n = 3 und x = 6

Nach dem dritten Durchlauf ist die Schleifenbedingung nicht mehr wahr, und die Schleife wird beendet.

Spezifikationen

Spezifikation Status Bemerkung
ECMAScript (ECMA-262)
Die Definition von 'while statement' in dieser Spezifikation.
Lebender Standard  
ECMAScript 2015 (6th Edition, ECMA-262)
Die Definition von 'while statement' in dieser Spezifikation.
Standard  
ECMAScript 5.1 (ECMA-262)
Die Definition von 'while statement' in dieser Spezifikation.
Standard  
ECMAScript 3rd Edition (ECMA-262)
Die Definition von 'while statement' in dieser Spezifikation.
Standard  
ECMAScript 1st Edition (ECMA-262)
Die Definition von 'while statement' in dieser Spezifikation.
Standard Initiale Definition

Browserkompatibilität

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid WebviewChrome für AndroidFirefox für AndroidOpera für AndroidSafari auf iOSSamsung InternetNode.js
whileChrome Vollständige Unterstützung 1Edge Vollständige Unterstützung 12Firefox Vollständige Unterstützung 1IE Vollständige Unterstützung 3Opera Vollständige Unterstützung 3Safari Vollständige Unterstützung 1WebView Android Vollständige Unterstützung 1Chrome Android Vollständige Unterstützung 18Firefox Android Vollständige Unterstützung 4Opera Android Vollständige Unterstützung 10.1Safari iOS Vollständige Unterstützung 1Samsung Internet Android Vollständige Unterstützung 1.0nodejs Vollständige Unterstützung 0.1.100

Legende

Vollständige Unterstützung  
Vollständige Unterstützung

Siehe auch