Introduction
Dans ce laboratoire, nous allons explorer le concept de la mise en correspondance et de la réduction d'ensembles d'éléments (arrays) en JavaScript. Plus précisément, nous allons apprendre à utiliser la fonction averageBy() pour calculer la moyenne d'un ensemble d'éléments après avoir mis chaque élément en correspondance avec une valeur à l'aide d'une fonction fournie. Par des exercices pratiques et des exemples, nous acquerrons une compréhension plus approfondie de ces puissants méthodes d'ensemble d'éléments (arrays) et de la manière dont elles peuvent être utilisées pour rationaliser notre code.
Instructions pour calculer la moyenne d'un tableau mis en correspondance
Pour calculer la moyenne d'un tableau, vous pouvez mapper chaque élément à une nouvelle valeur à l'aide de la fonction fournie. Voici les étapes :
- Ouvrez le Terminal/SSH et tapez
nodepour commencer à pratiquer la programmation. - Utilisez
Array.prototype.map()pour mapper chaque élément à la valeur renvoyée parfn. - Utilisez
Array.prototype.reduce()pour ajouter chaque valeur mise en correspondance à un accumulateur, initialisé avec une valeur de0. - Divisez le tableau résultant par sa longueur pour obtenir la moyenne.
Voici le code que vous pouvez utiliser :
const averageBy = (arr, fn) =>
arr
.map(typeof fn === "function" ? fn : (val) => val[fn])
.reduce((acc, val) => acc + val, 0) / arr.length;
Vous pouvez tester cette fonction à l'aide des exemples suivants :
averageBy([{ n: 4 }, { n: 2 }, { n: 8 }, { n: 6 }], (o) => o.n); // 5
averageBy([{ n: 4 }, { n: 2 }, { n: 8 }, { n: 6 }], "n"); // 5
Résumé
Félicitations ! Vous avez terminé le laboratoire sur la moyenne d'un tableau mis en correspondance. Vous pouvez pratiquer d'autres laboratoires sur LabEx pour améliorer vos compétences.