CSS властивості
ГлавнаяJavaScriptЦикли JavaScript

Цикли JavaScript

183

Цикли це умови, що повторюються, де одна змінна змінюється в циклі. Цикли зручні, коли ви хочете виконати один код повторно, щоразу з іншим значенням.

Замість писати:

<code data-language="javascript">doThing(cars[0]); doThing(cars[1]); doThing(cars[2]); doThing(cars[3]); doThing(cars[4]);

Ви можете написати

<code data-language="javascript">for (var i=0; i < cars .length;i++) { doThing(cars[i]); }

Цикл for

Найпростішим типом циклу є оператор for. Його синтаксис схожий на if, але з великою кількістю параметрів:

<code data-language="javascript">for(умова; умова завершення; зміна) { //зробити щось прямо зараз }

Подивимося, наприклад, як виконати один і той же код десять разів, використовуючи цикл for:

<code data-language="javascript">for(var i=0; i < 10; i=i + 1){ //Виконувати цей код 10 разів }

i=i + 1 можна записати як i++.

Цикл while

Цикл while багаторазово виконує блок коду, поки задана умова є істинною.

<code data-language="javascript">while(умова){ //виконувати доти, доки умова істинна }

Цикл у даному прикладі повторно виконуватиме цей блок коду, поки змінна i менше 5:

<code data-language="javascript">var i=0, x=""; while (i < 5) { x=x + "Число " + i; i++; }

do...while цикл є різновидом циклу while. Цей цикл буде виконувати блок коду одразу перед перевіркою на істинність умови. А потім повторює цикл доти, доки умова істинна:

<code data-language="javascript">do { //блок коду для виконання } 
while (умова);

Будьте обережні та уникайте нескінченного циклу, який виникає якщо умова завжди істинна!

Цикл do...while

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

<code data-language="javascript">do{ //щось робити } 
while(умова) ;

Давайте на прикладі подивимося, як надрукувати числа менше 10 за допомогою циклу do...while:

<code data-language="javascript">var i=0; do { document.write(i + " "); i++; //збільшуємо i на 1 } 
while (i < 10);