- Os iteration methods quando invocados iteram sobre os elementos do array.
- forEach: Executa a função passada por parâmetro para cada elemento.
const frameworks = ["Angular.js", "Ember.js", "Vue.js"];
frameworks.forEach((framework) => console.log(framework)); // Angular.js Ember.js Vue.js
- filter: Retorna um novo array contendo somente os elementos que retornaram true na função passada por parâmetro.
const frameworks = [
{
name: "Angular.js",
contribuitors: 1548
},
{
name: "Ember.js",
contribuitors: 746
},
{
name: "Vue.js",
contribuitors: 240
}
];
const result = frameworks.filter(function(framework) {
return framework.contribuitors < 1000;
});
console.log(result); // [ { name: Ember.js, contribuitors: 746 }, { name: Vue.js, contribuitors: 240 } ]
- find: Retorna o primeiro elemento que retornou true na função passada por parâmetro.
(...)
const result = frameworks.find(function(framework) {
return framework.name === "Angular.js";
});
console.log(result); // { name: Angular.js, contribuitors: 1548}
- some: Retorna true se UM OU MAIS elementos retornaram true na função passada por parâmetro.
- every: Retorna true se TODOS os elementos retornaram true na função passada por parâmetro.
(...)
const result = frameworks.some(function(framework) {
return framework.name.includes("js");
}); // true
const result = frameworks.some(function(framework) {
return framework.contribuitors > 1000;
}); // false
- map: Retorna um novo array com base no retorno da função passada por parâmetro.
(...)
const result = frameworks.map(function(framework) {
return framework.name;
}); // [ 'Angular.js', 'Ember.js', 'Vue.js']
- reduce: Retorna um valor com base no retorno da função passada por parâmetro. Tem uma função de acumulação.
(...)
const result = frameworks.reduce(function(total, frameworks) {
return total + framework.contribuitors
}, 0); // 0 é o valor inicial do total
console.log(result); // 2534