Maison > interface Web > js tutoriel > Comment fusionner efficacement deux tableaux d'objets JavaScript ?

Comment fusionner efficacement deux tableaux d'objets JavaScript ?

Linda Hamilton
Libérer: 2024-11-15 09:09:02
original
285 Les gens l'ont consulté

How to Efficiently Merge Two JavaScript Arrays of Objects?

Fusionner des tableaux d'objets en JavaScript

Supposons que vous ayez deux tableaux d'objets :

var arr1 = [
  { name: "lang", value: "English" },
  { name: "age", value: "18" },
];

var arr2 = [
  { name: "childs", value: "5" },
  { name: "lang", value: "German" },
];
Copier après la connexion

Vous souhaitez fusionnez ces tableaux en un seul tableau :

var arr3 = [
  { name: "lang", value: "German" },
  { name: "age", value: "18" },
  { name: "childs", value: "5" },
];
Copier après la connexion

Méthode $.extend() de jQuery

Vous pouvez initialement envisager d'utiliser $.extend(). Cependant, il ne répond pas à vos besoins, car il met simplement à jour le premier tableau :

$.extend(arr1, arr2); // arr4 = [{name : "childs", value: '5'}, {name: "lang", value: "German"}]
Copier après la connexion

Utilisation d'Array.prototype.push.apply()

Un plus Un moyen efficace de fusionner les tableaux est d'utiliser Array.prototype.push.apply():

Array.prototype.push.apply(arr1, arr2);
Copier après la connexion

Cette ligne de code pousse essentiellement les éléments de arr2 à la fin de arr1. Le résultat est un tableau fusionné stocké dans arr1.

// Example

var arr1 = [
  { name: "lang", value: "English" },
  { name: "age", value: "18" },
];

var arr2 = [
  { name: "childs", value: "5" },
  { name: "lang", value: "German" },
];

Array.prototype.push.apply(arr1, arr2);

console.log(arr1); // final merged result will be in arr1
Copier après la connexion

Sortie :

[
  { name: "lang", value: "English" },
  { name: "age", value: "18" },
  { name: "childs", value: "5" },
  { name: "lang", value: "German" },
]
Copier après la connexion

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!

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