Si vous êtes un développeur JavaScript ou que vous débutez avec JavaScript, quelque part vous avez entendu parler de map(), filter() et reduce(). Parfois, les personnes qui découvrent ces fonctions ne savent pas exactement ce que font ces fonctions et comment les utiliser ? Discutons-en dans cet article ci-dessous un par un.
.carte()
.map() est utilisé pour transformer un tableau. Transformer signifie disons que vous avez un tableau qui contient des nombres et que vous devez trouver le double de chaque nombre ou le triple de chaque nombre, vous voulez donc le transformer avec une logique de transformation et obtenir un nouveau tableau.
const arr = [2, 4, 5, 6, 8]
// double arr = [4, 8, 10, 12, 16]
// triple arr = [8, 12, 15, 18, 24]
let array = [1, 2, 3, 4, 5, 6]
function double(x){
return x * 2;
}
const result = array.map(double); // take callback function
// Or with arrow function
const result = array.map(x => x * 2);
console.log(result); // will print an array with double
La méthode .filter() est utilisée pour filtrer un tableau. Il filtrera un tableau en fonction d'une certaine logique et vous renverra un tableau avec une valeur filtrée. Supposons, par exemple, que vous ayez un tableau et que vous souhaitiez savoir quels éléments sont supérieurs à un nombre spécifique ? Essayons.
let arr = [2, 8, 3, 4, 5, 6]
function greaterThan3(x){
return x > 3;
}
const result = arr.filter(greaterThan3); // take callback function
// or with arrow function
const result = arr.filter(x => x > 3);
console.log(result);
Méthode .reduce() utilisée à un endroit où vous devez prendre tous les éléments d'un tableau et en tirer une seule valeur. Par exemple, disons que nous avons un tableau et que nous devons en trouver la somme ou le maximum.
let arr = [1, 5, 6, 8, 9, 3]
// sum, maximum
// Sum with non functional way
let arr = [2, 8, 3, 4, 5, 6];
function findSum(){
let sum = 0;
for(let i = 0; i < arr.length; i++){
sum = sum + arr[i];
}
return sum;
}
console.log(findSum());
arr.reduce(function(acc, curr){ // first parameter
// it will iterate over each element of array and this current(curr) with refer to current element of this array.
// Accumulator(acc) will accumulate the result for elements of the array.
},0) // second parameter
it represents the initial value for the accumulator
let arr = [1, 2, 3, 4, 5, 6]
const result = arr.reduce(function(acc, curr){
acc = acc + curr;
return acc;
});
console.log(result);
C'est la manière la plus simple d'utiliser .map(), .filter() et .reduce(). Si vous remplacez la boucle for par ces méthodes, c'est là où cela convient. Cela vous aidera beaucoup à rendre votre code plus propre et facile à lire.
Bon codage !
Combien de fois avez-vous jeté une bouteille en plastique, un bocal en verre, une canette en aluminium ou un paquet d'énergie verte sans réfléchir à deux fois ? Combien de fois avez-vous souhaité pouvoir obtenir quelque chose en échange de leur recyclage ? Si vous êtes comme la plupart des gens, la réponse est probablement plusieurs fois. Le recyclage est souvent perçu comme un tracas, une corvée ou un devoir qui n'apporte aucun bénéfice immédiat ou tangible.
Il était minuit passé lorsque Hayden a ramené Katie à son dortoir universitaire après leur soirée ensemble. Elle avait un cours tôt le matin et n'avait plus de vêtements de rechange après être restée avec lui la nuit précédente.
Tout esprit rationnel sait que les milieux politiques et médiatiques sont dominés par la gauche, voire l'extrême gauche, un état de fait qui crée un déséquilibre dans le discours politique. Dans le domaine religieux, ce déséquilibre est bien visible : les journaux et les réseaux de gauche ne se précipitent pas pour défendre la foi chrétienne.
Quand tu grandis, on a tendance à te dire que le monde est comme il est et que ta vie est juste de vivre ta vie à l'intérieur du monde, sans jamais risquer ta vie, juste suivre un chemin tracé et mourir à la fin, et essayer de ne pas cogner trop les murs. Mais c'est une vie très limitée.
La semaine dernière, j'ai remarqué un communiqué de presse, envoyé via PressGazette (un site Web d'information britannique). L'article annonçait qu'Acast, la société d'hébergement et de publicité de podcasts de Scandi, dirigerait un consortium d'éditeurs "probablement les plus influents" du podcasting.