Movatterモバイル変換


[0]ホーム

URL:


  1. Tecnologia Web para desenvolvedores
  2. JavaScript
  3. Referência JavaScript
  4. Instruções e declarações
  5. for

Esta página foi traduzida do inglês pela comunidade.Saiba mais e junte-se à comunidade MDN Web Docs.

View in EnglishAlways switch to English

for

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨julho de 2015⁩.

A instruçãofor cria um loop que consiste em três expressões opcionais, dentro de parênteses e separadas por ponto e vírgula, seguidas por uma declaração ou uma sequência de declarações executadas em sequência.

Sintaxe

for ([inicialização]; [condição]; [expressão final])   declaração
inicialização

Uma expressão (incluindo expressões de atribuição) ou declarações variáveis. Geralmente usada para iniciar o contador de variáveis. Esta expressão pode, opcionalmente, declarar novas variáveis com a palavra chavevar. Essas variáveis não são locais no loop, isto é, elas estão no mesmo escopo que o loopfor está. Variáveis declaradas com let são locais para a declaração.

O resultado desta expressão é descartado.

condição

Uma expressão para ser avaliada antes de cada iteração do loop. Se esta expressão for avaliada para true,declaração será executado. Este teste da condição é opcional. Se omitido, a condição sempre será avaliada como verdadeira. Se a expressão for avaliada como falsa, a execução irá para a primeira expressão após a construção loopfor.

expressão final

Uma expressão que será validada no final de cada iteração de loop. Isso ocorre antes da próxima avaliação da condição. Geralmente usado para atualizar ou incrementar a variável do contador.

declaração

Uma declaração que é executada enquanto a condição for verdadeira. Para executar múltiplas condições dentro do loop, use uma instrução de bloco({...}) para agrupar essas condições. Para não executar declarações dentro do loop, use uma instrução vazia(;).

Exemplos de uso

Usandofor

A declaraçãofor começa declarando a variáveli e inicializando-a como0. Ela verifica sei é menor que nove, executa as duas instruções subsequentes e incrementa 1 a variáveli após cada passagem pelo loop.

js
for (var i = 0; i < 9; i++) {  console.log(i);  // more statements}

Expressõesfor opcionais

Todas as três expressões na condição do loopfor são opcionais.

Por exemplo, no bloco deinicialização, não é necessário inicializar variáveis:

js
var i = 0;for (; i < 9; i++) {  console.log(i);  // more statements}

Assim como ocorre no bloco deinicialização, acondição também é opcional. Se você está omitindo essa expressão, você deve certificar-se de quebrar o loop no corpo para não criar um loop infinito.

js
for (var i = 0; ; i++) {  console.log(i);  if (i > 3) break;  // more statements}

Você também pode omitir todos os três blocos. Novamente, certifique-se de usar uma instruçãobreak no final do loop e também modificar (incrementar) uma variável, para que a condição dobreak seja verdadeira em algum momento.

js
var i = 0;for (;;) {  if (i > 3) break;  console.log(i);  i++;}

Usandofor sem uma declaração

O ciclofor a seguir calcula a posição de deslocamento de um nó na seção [expressão final] e, portanto, não requer o uso de uma declaração ou de um bloco de declaração, e no seu lugar é usado um ponto-vírgula -;.

js
function showOffsetPos(sId) {  var nLeft = 0,    nTop = 0;  for (    var oItNode = document.getElementById(sId); // inicialização    oItNode; // condition    nLeft += oItNode.offsetLeft,      nTop += oItNode.offsetTop,      oItNode = oItNode.offsetParent // expressão 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ê não usa a seção de declaração,oponto-e-vírgula é colocada imediatamente após a declaração do ciclo.

Especificações

Specification
ECMAScript® 2026 Language Specification
# sec-for-statement

Compatibilidade com navegadores

Veja também

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp