continue

A palavra chave continue termina a atual iteração do laço em que ele se encontra ou de um laço rotulado, e continua a execução deste laço com a próxima iteração.

Syntax

continue [rótulo];
rótulo
Identificador associado ao laço.

Descrição

Diferentemente do  break, o continue não termina a execução do laço completamente, em vez disso ele:

  • Volta à condição, em um laço do tipo while.
  • Volta à expressão, atualizando-a, em um laço do tipo for.

O continue pode incluir, opcionalmente, um rótulo que premite ao programa pular para a próxima iteração de um laço rotulado em vez de pular o loop em que ele se encontra. Neste caso, o continue necessita estar dentro deste laço rotulado.

Exemplos

Usando continue com while

O exemplo abaixo mostra um laço while que tem um  continue que será executado quando o valor de i for 3. Assim, n terá os valores 1, 2, and 5.

var i = 0;
var n = 0;

while (i < 5) {
  i++;

  if (i === 3) {
    continue;
  }

  n += i;
}

Usando o continue com um rótulo

No exemplo abaixo, um laço rotulado como checkiandj contém o laço rotulado checkj. Se o continue for alcançado, o programa continua a execução voltando ao topo do rótulo checkj. Cada vez que o continue for alcançado, checkj reiterará até sua condição for falsa. Quando retornar false, o restante de checkiandj será executado.

Se o continue tivesse o rótulo checkiandj, o programa iria continuar retornando a execução ao label checkiandj.

Veja também label.

var i = 0;
var j = 8;

checkiandj: while (i < 4) {
  console.log("i: " + i);
  i += 1;

  checkj: while (j > 4) {
    console.log("j: "+ j);
    j -= 1;

    if ((j % 2) == 0)
      continue checkj;
    console.log(j + " is odd.");
  }
  console.log("i = " + i);
  console.log("j = " + j);
}

Output:

"i: 0"

// start checkj
"j: 8"
"7 is odd."
"j: 7"
"j: 6"
"5 is odd."
"j: 5"
// end checkj

"i = 1" 
"j = 4" 

"i: 1"
"i = 2" 
"j = 4"

"i: 2"
"i = 3"
"j = 4"

"i: 3"
"i = 4"
"j = 4"

Especificações

Especificação Status Comentários
ECMAScript 1st Edition (ECMA-262) Padrão Definição inicial. Versão sem rótulo.
ECMAScript 3rd Edition (ECMA-262) Padrão Versão rotulada adicionada.
ECMAScript 5.1 (ECMA-262)
The definition of 'Continue statement' in that specification.
Padrão  
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'Continue statement' in that specification.
Padrão  
ECMAScript Latest Draft (ECMA-262)
The definition of 'Continue statement' in that specification.
Rascunho  

Compatibilidade entre navegadores

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Suporte básico (Yes) (Yes) (Yes) (Yes) (Yes)
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Suporte básico (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

Veja também

Etiquetas do documento e colaboradores

Etiquetas: 
 Colaboradores desta página: jfsiebel, sheldonled
 Última atualização por: jfsiebel,