do...while

Оператор do...while створює цикл, який виконує вказану інструкцію, доки перевірочна умова не буде оцінена як false. Умова оцінюється після виконання інструкції, в результаті вказана інструкція виконується принаймні один раз.

Синтаксис

do
   statement
while (condition);
statement
Інструкція, яка виконується принаймні один раз, і виконується повторно кожен раз, коли умова оцінюється як true. Для виконання кількох інструкцій, використовуйте блок ({ ... }), щоб згрупувати ці інструкції.
condition
Вираз, який оцінюється після кожного проходу циклу. Якщо condition оцінюється як true, statement виконується повторно. Коли condition оцінюється як false, контроль переходить до наступної після do...while інструкції.

Приклад

Використання do...while

У наступному прикладі цикл do...while виконується принаймні один раз, і продовжує виконуватись, доки i не перестане бути менше 5.

HTML-зміст

<div id="example"></div>

JavaScript-зміст

var result = '';
var i = 0;
do {
   i += 1;
   result += i + ' ';
} while (i > 0 && i < 5); // Хоча i == 0, цикл виконається, оскільки починається без перевірки
document.getElementById('example').innerHTML = result;

Результат

Специфікації

Специфікація Статус Коментар
ECMAScript 3rd Edition (ECMA-262) Standard Початкове визначення. Реалізоване у JavaScript 1.2
ECMAScript 5.1 (ECMA-262)
The definition of 'do-while statement' in that specification.
Standard
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'do-while statement' in that specification.
Standard Кінцева крапка з комою ; тепер необов'язкова.
ECMAScript (ECMA-262)
The definition of 'do-while statement' in that specification.
Living Standard

Сумісність з веб-переглядачами

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung InternetNode.js
do...whileChrome Full support 1Edge Full support 12Firefox Full support 1IE Full support 4Opera Full support 4Safari Full support 1WebView Android Full support 1Chrome Android Full support 18Firefox Android Full support 4Opera Android Full support 10.1Safari iOS Full support 1Samsung Internet Android Full support 1.0nodejs Full support 0.1.100

Legend

Full support  
Full support

Див. також