Skip to content

Instantly share code, notes, and snippets.

@kelvysmoura
Last active June 13, 2018 05:51
Show Gist options
  • Save kelvysmoura/bcbff46854a0e5958394efea84608576 to your computer and use it in GitHub Desktop.
Save kelvysmoura/bcbff46854a0e5958394efea84608576 to your computer and use it in GitHub Desktop.
ECMAScript 6 - forEach() and map()

ECMAScript 6 - forEach() and map()

Método forEach()

Sintaxe:

yourArray.forEach(function(p1, p2, p3){
    // your code 
});
  • forEach() é usada para passar por todos os itens de um array

  • Função de callback retorna 3 parâmetros

    • p1: Os intens do array
    • p2: As chaves do array
    • p3: O array que foi passado
  • Antes do método forEach() era usado o método for()

Mostrando funcionários com for()

Exemplo com método for()

var funcionarios = ['João', 'Maria', 'José'];

for(var i = 0; i< funcionarios.length; i++){
   console.log(funcionarios[i]);
}

/*
resultado
João
Maria
José
*/

Mostrando setores com forEach()

var setores = ['Administração', 'RH', 'Produção'];

setores.forEach(function(setor, p2, p3){
    console.log(setor);
});

/*
Resultado
Administração
RH
Produção
*/

Método map()

Sintaxe:

yourArray.map(function(p1, p2, p3){
    // your code 
});
  • map() é usada para manipular os itens de um array

  • Função de callback retorna 3 parâmetros

    • p1: Os intens do array
    • p2: As chaves do array
    • p3: O array que foi passado
  • Retorna um novo array com os novos valores

  • O exemplo a baixo da para ser feito com forEach no entando existe o map() que é especifico esse tipo de utilização

Aplicando desconto de 20% com forEach()

var precoProdutos = [300, 250, 125, 1540, 100];

var precoDesconto = [];

precoProdutos.forEach(function(p1 ,p2, p3){
  precoDesconto.push(p1-(p1*20/100));
});

console.log(precoDesconto);

/*
resultado
[ 240, 200, 100, 1232, 80 ]
*/

Aplicando desconto de 10% com map()

var precoProdutos = [300, 250, 125, 1540, 100];

var precoDesconto = precoProdutos.map(function(p1 ,p2, p3){
  return p1-(p1*10/100);
});

console.log(precoDesconto);

/*
Resultado
[ 270, 225, 112.5, 1386, 90 ]
*/

Testar codigo no repl.it


Gitter Gitter Gitter

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment