Оглавление

13.1. Цикл for

Цикл for используется для выполнения выражений определенное число раз.

 

Имеет следующий формат:


  for   (<Начальное  значение>;   <Условие>;   <Приращение>)    {
  <Выражения>
  }

Здесь используются следующие конструкции:
□  <начальное  значение> присваивает иеремешюй-счетчику начальное значение;
□  <Условие> содержит логическое выражение. Пока логическое выражение возвращает значение true, выполняются выражения внутри цикла;
□  <приращение> задает изменение переменной-счетчика при каждой итерации.

 

Более формально последовательность работы цикла for такова:
1.   Переменной - счетчику присваивается начальное значение.
2.   Проверяется условие — если оно истинно, выполняются выражения внутри цикла, а в противном случае осуществляется выход из цикла.
3.   Переменная - счетчик изменяется на величину, указанную в <приращении>.
4.   Осуществляется переход к пункту 2.
Цикл выполняется до тех пор, пока <Условие> не вернет false. Если этого не случится, цикл будет бесконечным.
<приращение> может не только увеличивать значение переменной-счетчика, но и уменьшать.

Выведем все числа от 100 до 1:

  for (var i=100; i>0; i--) document.write(i + "<br>");


<приращение> может изменять значение переменной-счетчика не только на единицу. Выведем все четные числа от 1 до 100:

  for (var i=2; i<101; i+=2) document.write(i + "<br>");

 

Следует заметить, что выражение, указанное в параметре <Условие>, вычисляется на каждой итерации. Рассмотрим вывод элементов массива:

  var Mass = [1, 2, 3];
  for (var i=0; i<Mass.length; i++) {
     if (i==0) {
        Mass.push(4); // Добавляем новые элементы
        Mass.push(5); // для доказательства
     }
     document.write(Mass[i] + " ");
  } // Выведет: 1 2 3 4 5 


В этом примере мы указываем свойство length в параметре <Условие>, а внутри цикла (чтобы доказать вычисление на каждой итерации) добавляем новые элементы в массив. В итоге получили все элементы массива, включая новые элементы. Чтобы этого избежать следует вычисление размера массива указать в первом параметре:

  var Mass = [1, 2, 3];
  for (var i=0, c=Mass.length; i<c; i++) {
     if (i==0) {
        Mass.push(4); // Добавляем новые элементы
        Mass.push(5); // для доказательства
     }
     document.write(Mass[i] + " ");
  } // Выведет: 1 2 3 
Комментарии принадлежат их авторам. Мы не несем ответственности за их содержание.
Отправитель Нити