while

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

Синтаксис

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 = 1 та x = 1
  • Після другого проходу: n = 2 та x = 3
  • Після третього проходу: n = 3 та x = 6

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

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

Специфікація Статус Коментар
ECMAScript Latest Draft (ECMA-262)
The definition of 'while statement' in that specification.
Draft
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'while statement' in that specification.
Standard
ECMAScript 5.1 (ECMA-262)
The definition of 'while statement' in that specification.
Standard
ECMAScript 3rd Edition (ECMA-262)
The definition of 'while statement' in that specification.
Standard
ECMAScript 1st Edition (ECMA-262)
The definition of 'while statement' in that specification.
Standard Початкове визначення

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

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung InternetNode.js
whileChrome Full support 1Edge Full support 12Firefox Full support 1IE Full support 3Opera Full support YesSafari Full support YesWebView Android Full support 1Chrome Android Full support 18Firefox Android Full support 4Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support 1.0nodejs Full support Yes

Legend

Full support  
Full support

Див. також