Связь и интернет Архив Программирование
   
Сделать стартовойСделать закладку            
   ПОИСК  
   
Главная / JavaScript /
8  Perl
8  PHP
8  JavaScript
8  HTML
8  DHTML
8  XML
8  CSS
8  C / C++
8  Pascal и Delphi
8  Турбо Ассемблер
8  MySQL
8  CASE-технологии
8  Алгоритмы
8  Python
8  Обратная связь
8  Гостевая книга
Новости о мире


Операторы и функции - Программирование от RIN.RU
Операторы и функции



Операторы цикла


Цикл - это последовательность операторов, выполнение которой повторяется до тех пор, пока определенное условие не станет ложным. JavaScript содержит три оператора цикла: for, while и do:while, а также операторы break и continue, которые используются внутри циклов.


Близок к операторам цикла и оператор итерации for:in, используемый при работе с объектами.


Оператор for


Оператор цикла for имеет вид:


for (инициализация; условие; изменение) оператор


Здесь инициализация и изменение - это любое выражения, условие - любое выражение, значение которого может быть преобразовано к логическому типу, оператор - любая группа операторов JavaScript; если эти группа содержит более одного оператора, то она должны быть заключена в фигурные скобки {}. Инициализация может содержать декларацию переменной.


Оператор for выполняется следующим образом:


  1. Выполняется выражение инициализация (обычно это выражение инициализирует счетчик или счетчики цикла).

  2. Вычисляется значение выражения условие. Если оно ложно, то управление передается оператору, следующему за данным оператором.

  3. Выполняется оператор.

  4. Выполняется выражение изменение (обычно это выражение увеличивает или уменьшает счетчик или счетчики цикла) и управление передается этапу 2.


Данный оператор обычно используется в тех случаях, когда количество повторений цикла известно заранее. Например, следующая функция обнуляет все элементы массива, переданного ей в качестве аргумента:


function initArray(a) {
for (var i = 0; i < a.length; i++)
a[i] = 0;
}


Оператор while


Оператор цикла while имеет вид:


while (условие) оператор


Здесь условие - любое выражение, значение которого может быть преобразовано к логическому типу, оператор - любая группа операторов JavaScript; если эти группа содержит более одного оператора, то она должны быть заключена в фигурные скобки {}.


Оператор while выполняется следующим образом:


  1. Вычисляется значение выражения условие. Если оно ложно, то управление передается оператору, следующему за данным оператором.

  2. Выполняется оператор и управление передается этапу 1.


При использовании данного оператора необходимо убедиться, что рано или поздно условие станет ложным, т. к. иначе сценарий войдет в бесконечный цикл, например:


while (true)
document.write("Привет всем!");


Оператор do:while


Оператор цикла do:while имеет вид:


do оператор while (условие)


Здесь условие - любое выражение, значение которого может быть преобразовано к логическому типу, оператор - любая группа операторов JavaScript; если эти группа содержит более одного оператора, то она должны быть заключена в фигурные скобки {}.


Оператор do : while выполняется следующим образом:


  1. Выполняется оператор.

  2. Вычисляется значение выражения условие. Если оно ложно, то управление передается оператору, следующему за данным оператором.

  3. Управление передается этапу 1.


Этот оператор отличается от оператора while тем, что цикл обязательно выполняется хотя бы раз. Пример:


var i = 0;
do
document.write(i++);
while (i < 10);


Метки операторов


Любой оператор или блок операторов в сценарии на языке JavaScript может иметь любое количество меток. Метки используются операторами break и continue для указания того, к какому оператору они относятся. Помеченный оператор имеет вид:


метка: оператор


В качестве метки может использоваться любой идентификатор, который не является зарезервированным словом.


Хотя в современном программировании использование меток считается дурным тоном, в некоторых случаях их применение существенно упрощает логику программы. Чаще всего это происходит, когда метки используются для передачи управления из глубоко вложенного цикла к внешнему.


Оператор break


Оператор break прерывает выполнение текущего цикла, оператора switch или помеченный оператора и передает управление оператору, следующему за прерванным. Этот оператор может употребляться только внутри циклов while, do:while, for или for:in, а также внутри оператора switch. Он имеет две формы:


break
break метка


Первая форма оператора прерывает выполнение самого внутреннего из циклов или операторов switch. Вторая форма оператора прерывает выполнение оператора с заданной меткой.


Пример оператора break в теле функции, возвращающей номер элемента массива, содержащего заданное значение:


function findValue(a, theValue) {
for (var i = 0; i < a.length; i++) {
if (a[i] == theValue)
break;
}
return i;
}


Оператор continue


Оператор continue завершает текущую итерацию текущего цикла или цикла, помеченного соответствующей меткой, и начинает новую итерацию. Этот оператор может употребляться только внутри циклов while, do:while, for или for:in. Он имеет две формы:


continue
continue метка


Первая форма оператора завершает текущую итерацию самого внутреннего из циклов. Вторая форма оператора завершает текущую итерацию оператора с заданной меткой. При этом переход к следующей итерации цикла происходит следующим образом:


  • циклы while и do:while проверяют условие цикла и, если оно истинно, начинают очередное выполнение цикла;

  • цикл for выполняет выражение изменение, проверяет условие цикла и, если оно истинно, начинает очередное выполнение цикла;

  • цикл for:in переходит к следующему полю переменной и начинает очередное выполнение цикла.


В следующем примере к переменной n последовательно добавляются значения 1, 2, 4 и 5:


var i = 0;
var n = 0;
while (i < 5) {
i++;
if (i == 3)
continue;
n += i;
}


<<<  НазадВперед  >>>
 1  2  3  4 


 8  Комментарии к статье  8 8  Обсудить в чате

8  В тему

Типы данных

Выражения и операции

Регулярные выражения

Использование объектов

Примитивные встроенные объекты

Строки: встроенный объект String

Массивы: встроенный объект Array

Дата и время: встроенный объект Date

Встроенные объекты Error, Math и RegExp

Дополнительные возможности JScript

Исполняющая система JScript

Исполняющая система JScript (продолжение)

 
  
  
    Copyright ©  RIN 2003 - 2004      * Обратная связь