--- title: while slug: Web/JavaScript/Reference/Statements/while tags: - JavaScript - Оператор - Цикл translation_of: Web/JavaScript/Reference/Statements/while ---
{{jsSidebar("Statements")}}

Оператор while создаёт цикл, выполняющий заданную инструкцию, пока истинно проверяемое условие. Логическое значение условия вычисляется перед исполнением тела цикла.

Синтаксис

while (условие) {
  инструкция
}
условие
Выражение, логическое значение которого проверяется каждый раз перед заходом в цикл. Если значение истинно, то исполняется инструкция. Когда значение становится ложным, выполняется код, следующий за циклом while.
инструкция
Инструкция, которая исполняется каждый раз, пока истинно условие. Чтобы выполнить несколько инструкций в цикле, используйте блочный оператор ({ ... }) для их группировки.

Примеры

Следующий цикл while исполняется, пока n не превышает трёх.

var n = 0;
var x = 0;

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

На каждой итерации цикла n увеличивается на единицу и прибавляется к x. Таким образом, x и n принимают следующие значения:

После окончания третьей итерации условие n < 3 больше не является истинным, поэтому цикл завершается.

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

Спецификация Статус Комментарий
{{SpecName('ESDraft', '#sec-while-statement', 'while statement')}} {{Spec2('ESDraft')}}  
{{SpecName('ES6', '#sec-while-statement', 'while statement')}} {{Spec2('ES6')}}  
{{SpecName('ES5.1', '#sec-12.6.2', 'while statement')}} {{Spec2('ES5.1')}}  
{{SpecName('ES3', '#sec-12.6.2', 'while statement')}} {{Spec2('ES3')}}  
{{SpecName('ES1', '#sec-12.6.1', 'while statement')}} {{Spec2('ES1')}} Изначальное определение

Совместимость с браузерами

{{Compat}}

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