Loops


    For
    • Sintaxe:
      for(var i=0; i < 10; i++){ //i +=2 adiciona 2 a cada iteração
        console.log(i);
      }

      // i = 0, 0 < 10 true, log i to console, i++
      // i = 1, 1< 10 true, log i to console, i++
      ...
      // i = 1, 9 < 10 true, log i to console, i++
      // i = 1, 10 < 10 FALSE, exit the loop!

      Exemplo:
      var jessica = ['Jessica', 'Pearson', 1969, 'Laywer'] //array
      for(var i=0; i < jessica.length; i++){ //jessica.length: i <= 4
      console.log(jessica[i]);
      }

    While
    • Exemplo:
      var i = 0;
      while (i < jessica.length) {
      console.log(jessica[i]);
      i++; //i++ colocado dentro do while
      }

    Continue and Break Statements
      1) Continue: quite the current iteration of the loop and continue with the next iteration normally.
      2) Break: break out of a loop.

      Exempl com Continue:
      for(var i = 0; i < jessica.length; i++){
      if (typeof jessica[i] !== 'string') continue;
      console.log(jessica[i]);
      }
      Resultado: Jessica, Pearson, Laywer.
      Todos os itens do array passam pelo if, caso seja diferente de string, irá cancelar a execução dessa iteração e ir para a próxima.
      Com isso, os tipos que não forem string, por exemplo, a data de aniversário 1969 não será exibida.

      Exemplo com Break:
      for(var i = 0; i < jessica.length; i++){
      if (typeof jessica[i] !== 'string') break;
      console.log(jessica[i]);
      }
      Resultado: Jessica, Pearson.
      Todos os itens passam pelo if, ao verificar que um deles não é uma string, o processo de iterações será cancelado.
      Com isso, todos os dados após a data 1969 não serão exibidos.

    forEach
    • forEach has access to the content of the array, such as?
      1) currentValue: Required. The value of the current element.
      2) index: Optional. The array index of the current element
      3) arr Optional. The array object the current element belongs to

      4) thisValue Optional. A value to be passed to the function to be used as its "this" value.
      If this parameter is empty, the value "undefined" will be passed as its "this" value

    Map
    • Just like forEach, but the difference is that Map returns a brand new array.