do...while 语句创建一个执行指定语句的循环,直到condition值为 false。在执行statement 后检测condition,所以指定的statement至少执行一次。
do
statement
while (condition);
statementcondition 值为真时重新执行。想执行多行语句,可使用block语句({ ... })包裹这些语句。conditioncondition 值为真, statement 会再次执行。当 condition 值为假,则跳到do...while之后的语句。do...while下面的例子中,do...while 循环至少迭代一次,并且继续迭代直到 i不再小于 5 时结束。
<div id="example"></div>
var result = '';
var i = 0;
do {
i += 1;
result += i + ' ';
} while (i < 5);
document.getElementById('example').innerHTML = result;
| Specification | Status | Comment |
|---|---|---|
| ECMAScript 3rd Edition (ECMA-262) | Standard | Initial definition. Implemented in JavaScript 1.2 |
| ECMAScript 5.1 (ECMA-262) do-while statement |
Standard | |
| ECMAScript 2015 (6th Edition, ECMA-262) do-while statement |
Standard | Trailing ; is now optional. |
| ECMAScript Latest Draft (ECMA-262) do-while statement |
Draft |
| Desktop | Mobile | Server | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
do...while | Chrome Full support Yes | Edge Full support Yes | Firefox Full support 1 | IE Full support 6 | Opera Full support Yes | Safari Full support Yes | WebView Android Full support Yes | Chrome Android Full support Yes | Edge Mobile Full support Yes | Firefox Android Full support 4 | Opera Android Full support Yes | Safari iOS Full support Yes | Samsung Internet Android Full support Yes | nodejs Full support Yes |