| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/Statements/for | [Back] [Original] |
Get to know MDN better
Esta pgina foi traduzida do ingls pela comunidade. Saiba mais e junte-se comunidade MDN Web Docs.
This feature is well established and works across many devices and browser versions. Its been available across browsers since julho de 2015.
A instruo for cria um loop que consiste em trs expresses opcionais, dentro de parnteses e separadas por ponto e vrgula, seguidas por uma declarao ou uma sequncia de declaraes executadas em sequncia.
for ([inicializao]; [condio]; [expresso final]) declarao
inicializaoUma expresso (incluindo expresses de atribuio) ou declaraes variveis. Geralmente usada para iniciar o contador de variveis. Esta expresso pode, opcionalmente, declarar novas variveis com a palavra chave var. Essas variveis no so locais no loop, isto , elas esto no mesmo escopo que o loop for est. Variveis declaradas com let so locais para a declarao.
O resultado desta expresso descartado.
condioUma expresso para ser avaliada antes de cada iterao do loop. Se esta expresso for avaliada para true, declarao ser executado. Este teste da condio opcional. Se omitido, a condio sempre ser avaliada como verdadeira. Se a expresso for avaliada como falsa, a execuo ir para a primeira expresso aps a construo loop for.
expresso finalUma expresso que ser validada no final de cada iterao de loop. Isso ocorre antes da prxima avaliao da condio. Geralmente usado para atualizar ou incrementar a varivel do contador.
declaraoUma declarao que executada enquanto a condio for verdadeira. Para executar mltiplas condies dentro do loop, use uma instruo de bloco ({...}) para agrupar essas condies. Para no executar declaraes dentro do loop, use uma instruo vazia (;).
forA declarao for comea declarando a varivel i e inicializando-a como 0. Ela verifica se i menor que nove, executa as duas instrues subsequentes e incrementa 1 a varivel i aps cada passagem pelo loop.
for (var i = 0; i < 9; i++) {
console.log(i);
// more statements
}
for opcionaisTodas as trs expresses na condio do loop for so opcionais.
Por exemplo, no bloco de inicializao, no necessrio inicializar variveis:
var i = 0;
for (; i < 9; i++) {
console.log(i);
// more statements
}
Assim como ocorre no bloco de inicializao, a condio tambm opcional. Se voc est omitindo essa expresso, voc deve certificar-se de quebrar o loop no corpo para no criar um loop infinito.
for (var i = 0; ; i++) {
console.log(i);
if (i > 3) break;
// more statements
}
Voc tambm pode omitir todos os trs blocos. Novamente, certifique-se de usar uma instruo break no final do loop e tambm modificar (incrementar) uma varivel, para que a condio do break seja verdadeira em algum momento.
var i = 0;
for (;;) {
if (i > 3) break;
console.log(i);
i++;
}
for sem uma declaraoO ciclo for a seguir calcula a posio de deslocamento de um n na seo [expresso final] e, portanto, no requer o uso de uma declarao ou de um bloco de declarao, e no seu lugar usado um ponto-vrgula - ;.
function showOffsetPos(sId) {
var nLeft = 0,
nTop = 0;
for (
var oItNode = document.getElementById(sId); // inicializao
oItNode; // condition
nLeft += oItNode.offsetLeft,
nTop += oItNode.offsetTop,
oItNode = oItNode.offsetParent // expresso final
); /* empty statement */
console.log(
'Offset position of "' +
sId +
'" element:\n left: ' +
nLeft +
"px;\n top: " +
nTop +
"px;",
);
}
// Exemplo de call:
showOffsetPos("content");
// Resultado:
// "Offset position of "content" element:
// left: 0px;
// top: 153px;"
Nota: Nesse caso, quando voc no usa a seo de declarao, o ponto-e-vrgula colocada imediatamente aps a declarao do ciclo.
| Specification |
|---|
| ECMAScript 2027 LanguageSpecification # sec-for-statement |
This page was last modified on 22 de mai. de 2026 by MDN contributors.
Your blueprint for a better internet.
Portions of this content are 19982026 by individual mozilla.org contributors. Content available under a Creative Commons license.
| Web Proxy Viewer | New URL | Original Page |