Introduction
Dans ce laboratoire, nous allons explorer le concept d'intersection d'ensembles en JavaScript. Plus précisément, nous allons implémenter une fonction qui renvoie les éléments communs entre deux tableaux, après avoir appliqué une fonction fournie à chaque élément des deux tableaux. Ce laboratoire vous aidera à comprendre comment utiliser les fonctions de premier ordre en JavaScript pour manipuler les tableaux et résoudre des problèmes de programmation courants.
Instructions for Finding Mapped Array Intersection
Pour trouver les éléments communs entre deux tableaux après avoir appliqué une fonction à chaque élément des deux tableaux, suivez ces étapes :
- Ouvrez le Terminal/SSH et tapez
node. - Utilisez le code fourni ci-dessous :
const intersectionBy = (a, b, fn) => {
const s = new Set(b.map(fn));
return [...new Set(a)].filter((x) => s.has(fn(x)));
};
- Dans le code, remplacez
aetbpar vos tableaux etfnpar la fonction que vous voulez appliquer à chaque élément. - Exécutez le code pour obtenir le tableau résultant avec les éléments communs.
Exemple :
intersectionBy([2.1, 1.2], [2.3, 3.4], Math.floor); // [2.1]
intersectionBy(
[{ title: "Apple" }, { title: "Orange" }],
[{ title: "Orange" }, { title: "Melon" }],
(x) => x.title
); // [{ title: 'Orange' }]
Dans le premier exemple, la fonction Math.floor est appliquée aux tableaux [2.1, 1.2] et [2.3, 3.4], renvoyant l'élément commun [2.1].
Dans le second exemple, la fonction x => x.title est appliquée aux tableaux [{ title: 'Apple' }, { title: 'Orange' }] et [{ title: 'Orange' }, { title: 'Melon' }], renvoyant l'élément commun [{ title: 'Orange' }].
Summary
Félicitations! Vous avez terminé le laboratoire sur l'intersection de tableaux mappés. Vous pouvez pratiquer d'autres laboratoires dans LabEx pour améliorer vos compétences.