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) |

