The while statement creates a loop that executes a specified statement as long as the test condition evaluates to true. The condition is evaluated before executing the statement.
The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
Syntax
while (condition) statement
condition
- An expression evaluated before each pass through the loop. If this condition evaluates to true,
statement
is executed. When condition evaluates to false, execution continues with the statement after thewhile
loop. statement
- An optional statement that is executed as long as the condition evaluates to true. To execute multiple statements within the loop, use a block statement (
{ ... }
) to group those statements. Note: Use thebreak
statement to stop a loop before condition evaluates to true.
Examples
Using while
The following while
loop iterates as long as n
is less than three.
var n = 0; var x = 0; while (n < 3) { n++; x += n; }
Each iteration, the loop increments n
and adds it to x
. Therefore, x
and n
take on the following values:
- After the first pass:
n
= 1 andx
= 1 - After the second pass:
n
= 2 andx
= 3 - After the third pass:
n
= 3 andx
= 6
After completing the third pass, the condition n
< 3 is no longer true, so the loop terminates.
Specifications
Specification |
---|
ECMAScript (ECMA-262)The definition of 'while statement' in that specification. |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
Desktop | Mobile | Server | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
while
|
Chrome
Full support 1 |
Edge
Full support 12 |
Firefox
Full support 1 |
IE
Full support 3 |
Opera
Full support 3 |
Safari
Full support 1 |
WebView Android
Full support 1 |
Chrome Android
Full support 18 |
Firefox Android
Full support 4 |
Opera Android
Full support 10.1 |
Safari iOS
Full support 1 |
Samsung Internet Android
Full support 1.0 |
nodejs
Full support 0.1.100 |
Legend
- Full support
- Full support
See also
while by Mozilla Contributors is licensed under CC-BY-SA 2.5.