Introduction
Dans ce laboratoire, nous allons explorer la manière de mapper un tableau d'objets en un objet en utilisant les fonctions de mappage fournies. Nous utiliserons la méthode Array.prototype.reduce() pour mapper le tableau, et les fonctions mapKey et mapValue pour mapper respectivement les clés et les valeurs de l'objet résultant. À la fin de ce laboratoire, vous aurez une meilleure compréhension de la manière de transformer des structures de données en JavaScript.
Comment mapper un tableau en un objet en JavaScript
Pour mapper un tableau d'objets en un objet en JavaScript, suivez ces étapes :
- Ouvrez le Terminal/SSH et tapez
nodepour commencer à pratiquer la programmation. - Utilisez
Array.prototype.reduce()pour mapper le tableau en un objet. - Utilisez le paramètre
mapKeypour mapper les clés de l'objet et le paramètremapValuepour mapper les valeurs.
Voici un extrait de code d'exemple qui montre comment utiliser la fonction objectify pour mapper un tableau d'objets en un objet :
const objectify = (arr, mapKey, mapValue = (i) => i) =>
arr.reduce((acc, item) => {
acc[mapKey(item)] = mapValue(item);
return acc;
}, {});
Vous pouvez ensuite utiliser la fonction objectify pour mapper un tableau d'objets en un objet de la manière suivante :
const people = [
{ name: "John", age: 42 },
{ name: "Adam", age: 39 }
];
// Map the object array to an object using the name property as keys
objectify(people, (p) => p.name.toLowerCase());
// Sortie : { john: { name: 'John', age: 42 }, adam: { name: 'Adam', age: 39 } }
// Map the object array to an object using the name property as keys and the age property as values
objectify(
people,
(p) => p.name.toLowerCase(),
(p) => p.age
);
// Sortie : { john: 42, adam: 39 }
Sommaire
Félicitations ! Vous avez terminé le laboratoire Map an Array to an Object. Vous pouvez pratiquer d'autres laboratoires sur LabEx pour améliorer vos compétences.