Maison > interface Web > js tutoriel > Comment fusionner efficacement deux tableaux d'objets basés sur une clé commune ?

Comment fusionner efficacement deux tableaux d'objets basés sur une clé commune ?

Susan Sarandon
Libérer: 2024-12-11 20:51:15
original
322 Les gens l'ont consulté

How to Efficiently Merge Two Arrays of Objects Based on a Common Key?

Fusionner des tableaux d'objets basés sur une clé commune

Supposons que vous ayez deux tableaux d'objets avec une clé commune, telle que id. Vous devez fusionner ces tableaux en fonction de la clé commune et créer un nouveau tableau avec les propriétés combinées des deux objets.

Pour y parvenir efficacement, vous pouvez exploiter la méthode Object.assign(). Voici comment procéder :

let arr1 = [
  { id: "abdc4051", date: "2017-01-24" },
  { id: "abdc4052", date: "2017-01-22" },
];

let arr2 = [
  { id: "abdc4051", name: "ab" },
  { id: "abdc4052", name: "abc" },
];

let arr3 = arr1.map((item, i) => Object.assign({}, item, arr2[i]));
Copier après la connexion

La méthode Object.assign() fusionne les propriétés des objets passés en arguments dans un nouvel objet. Dans ce cas, nous l'utilisons pour combiner les propriétés des objets correspondants dans les tableaux arr1 et arr2.

Le tableau résultant arr3 contiendra les objets fusionnés, chacun avec les propriétés des deux objets d'entrée :

[
  { id: "abdc4051", date: "2017-01-24", name: "ab" },
  { id: "abdc4052", date: "2017-01-22", name: "abc" },
]
Copier après la connexion

Cette approche garantit une fusion efficace de tableaux d'objets basée sur une clé commune sans avoir besoin d'une itération explicite sur les clés d'objet.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal