--- title: while slug: Web/JavaScript/Reference/Statements/while tags: - JavaScript - while translation_of: Web/JavaScript/Reference/Statements/while ---
{{jsSidebar("Statements")}}

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

{{EmbedInteractiveExample("pages/js/statement-while.html")}}

Синтаксис

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

Заувага: Використовуйте оператор break, щоб зупинити цикл раніше, ніж умова буде оцінена як false.

Приклади

Наступний цикл while виконується, поки n менше трьох.

var n = 0;
var x = 0;

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

На кожній ітерації цикл збільшує змінну n на один та додає її до x. Отже, x та n приймають наступні значення:

Після завершення третього проходу умова n < 3 більше не дорівнює true, тому цикл переривається.

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

Специфікація Статус Коментар
{{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("javascript.statements.while")}}

Див. також