Ядро JavaScript 1.5. Руководство по использованию

Оператор continue


Оператор continue используется для рестарта операторов while, do-while, for и label.

  • Если Вы используете continue без label, он прерывает текущую итерацию ближайшего цикла while, do-while или for и продолжает выполнение этого цикла со следующей итерации. В отличие от оператора break, continue не прерывает выполнение цикла полностью. В цикле while он переходит на condition. В цикле for на increment-expression.

  • Если Вы используете continue с label, он применяется к оператору цикла, идентифицированному этим label.

  • Синтаксис оператора continue таков:

    1. continue

    2. continue label


    Пример 1.

    Это пример цикла while с оператором continue, который выполняется, если значение 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 имеет label для 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>");

       }



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