Ядро JavaScript 1.5. Справочник

       

Continue


Рестарт оператора while, do-while, for, или label.

Реализован в

JavaScript 1.0, NES 2.0

Версия ECMA

ECMA-262 (для непомеченной/unlabeled версии)
ECMA-262, Edition 3 (для помеченной/labeled версии)


Синтаксис

continue [label]


Параметр

label

Идентификатор, ассоциированный с меткой оператора.


Описание

По контрасту с оператором , continue не прерывает полностью выполнение оператора. Вместо этого он:



  • в цикле перескакивает обратно на condition.

  • в цикле перескакивает на выражение update.
  • Оператор continue может теперь содержать необязательный лэйбл, который позволяет программе прерывать выполнение помеченного оператора и продолжить выполнение специфицированного помеченного оператора. Этот тип continue обязан находиться в операторе цикла, идентифицированном лэйблом, используемым оператором continue.


    Примеры

    Пример 1.

    Это цикл while, с оператором , выполняемым, если i имеет значение 3. Таким образом, n принимает значения 1, 3, 7 и 12.

    i = 0;

    n = 0;

    while (i < 5) {

    i++;

       if (i == 3)

          continue;

       n += i;

    }

     

    Пример 2.

    С это примере оператор, помеченный checkiandj, содержит оператор, помеченный checkj. Если обнаружен continue, программа продолжает от  верхней точки оператора checkj. Каждый раз при обнаружении continue, checkj повторяет итерацию, пока условие не вернёт false. Если false возвращено, выполняется оставшаяся часть оператора checkiandj. checkiandj повторяет итерацию, пока условие не вернёт false. Если false возвращено, программа продолжает выполняться с точки после оператора checkiandj.

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

    checkiandj :

    while (i<4) {

       document.write(i + "<BR>");

       i+=1;

       checkj :

       while (j>4) {

          document.write(j + "<BR>");

          j-=1;

          if ((j%2)==0)

             continue checkj;

          document.write(j + " is odd.<BR>");

       }

       document.write("i = " + i + "<br>");

       document.write("j = " + j + "<br>");

    }


    См. также

    , .



    Содержание раздела