do...while

Выражение do...while создает цикл, который выполняет указанное выражение до тех пор, пока условие не станет ложным. Условие проверяется после выполнения выражения, то есть выражение выполнится как минимум один раз.

Синтаксис

do
   выражение
while (условие);
выражение
Выражение, которое выполняется как минимум один раз и выполняется на каждом шаге цикла, пока условие истинно. Выражение может содержать несколько строк, для этого необходимо сгруппировать код в блок ({ ... }).
условие
Выражение, которое вычисляется после каждого шага цикла. Если условие истинно, то выражение выполняется еще раз. Когда условие ложно, выполняется выражение, следующее после 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) Стандарт Изначальное определение. Реализовано в JavaScript 1.2
ECMAScript 5.1 (ECMA-262)
Определение 'do-while statement' в этой спецификации.
Стандарт
ECMAScript 2015 (6th Edition, ECMA-262)
Определение 'do-while statement' в этой спецификации.
Стандарт Использование ; теперь необязательно
ECMAScript Latest Draft (ECMA-262)
Определение 'do-while statement' в этой спецификации.
Черновик

Поддержка в браузерах

Update compatibility data on GitHub
КомпьютерыМобильныеServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome для AndroidFirefox для AndroidOpera для AndroidSafari on iOSSamsung InternetNode.js
do...whileChrome Полная поддержка 1Edge Полная поддержка 12Firefox Полная поддержка 1IE Полная поддержка 4Opera Полная поддержка ДаSafari Полная поддержка ДаWebView Android Полная поддержка 1Chrome Android Полная поддержка 18Firefox Android Полная поддержка 4Opera Android Полная поддержка ДаSafari iOS Полная поддержка ДаSamsung Internet Android Полная поддержка 1.0nodejs Полная поддержка Да

Легенда

Полная поддержка  
Полная поддержка

Смотрите также