freeCodeCamp/guide/portuguese/javascript/loops/for-loop/index.md

2.4 KiB
Raw Blame History

title localeTitle
For Loop Para loop

Sintaxe

for ([initialization]); [condition]; [final-expression]) { 
   // statement 
 } 

O javascript for instrução consiste em três expressões e uma declaração:

Descrição

  • Inicialização - Executar antes da primeira execução no loop. Esta expressão é comumente usada para criar contadores. As variáveis criadas aqui estão no escopo do loop. Uma vez terminado o loop, sua execução é destruída.
  • condição - Expressão que é verificada antes da execução de cada iteração. Se omitido, esta expressão é avaliada como verdadeira. Se for avaliado como true, a instrução do loop será executada. Se for avaliado como falso, o loop será interrompido.
  • expressão final - Expressão executada após cada iteração. Geralmente usado para incrementar um contador. Mas pode ser usado para diminuir um contador também.
  • statement - Código a ser repetido no loop

qualquer uma dessas três expressões ou a declaração pode ser omitida. For loops são comumente usados para contar um certo número de iterações para repetir uma instrução. Use uma instrução break para sair do loop antes que a expressão de condição seja avaliada como falsa.

Armadilhas Comuns

Ultrapassando os limites de um array

Ao indexar em um array muitas vezes é fácil exceder os limites do array (ex. Tentar referenciar o 4º elemento de um array de 3 elementos).

    // This will cause an error. 
    // The bounds of the array will be exceeded. 
    var arr = [ 1, 2, 3 ]; 
    for (var i = 0; i <= arr.length; i++) { 
       console.log(arr[i]); 
    } 
 
    output: 
    1 
    2 
    3 
    undefined 

Existem duas maneiras de corrigir este código. Defina a condição como i < arr.length ou i <= arr.length - 1

Exemplos

Iterar entre inteiros de 0 a 8

for (var i = 0; i < 9; i++) { 
   console.log(i); 
 } 
 
 output: 
 0 
 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 

Quebra de um loop antes que a expressão de condição seja falsa

for (var elephant = 1; elephant < 10; elephant+=2) { 
    if (elephant === 7) { 
        break; 
    } 
    console.info('elephant is ' + elephant); 
 } 
 
 output: 
 elephant is 1 
 elephant is 3 
 elephant is 5 

Outros recursos