Maison >interface Web >js tutoriel >Comment puis-je fusionner deux objets JavaScript ?

Comment puis-je fusionner deux objets JavaScript ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-21 09:38:11381parcourir

How Can I Merge Two JavaScript Objects?

Comment fusionner les propriétés de deux objets JavaScript

JavaScript ne fournit pas de méthode native pour fusionner directement des objets. Cependant, il existe plusieurs façons d'accomplir cette tâche.

ECMAScript 2018 Standard Method

Pour ES2018 et versions ultérieures, la syntaxe de répartition d'objets vous permet de fusionner des objets à l'aide de le code suivant :

let merged = {...obj1, ...obj2};

Les propriétés d'obj2 écraseront celles de obj1. Vous pouvez fusionner plusieurs objets en utilisant la même syntaxe.

ECMAScript 2015 (ES6) Standard Method

ES6 fournit la méthode Object.assign() pour fusionner des objets. Le premier argument est l'objet cible, tandis que les arguments suivants sont des objets dont les propriétés seront copiées dans la cible :

Object.assign(obj1, obj2);

// Merge multiple objects
const allRules = Object.assign({}, obj1, obj2, obj3);

Méthode pour ES5 et versions antérieures

Pour ES5 et versions antérieures, vous pouvez utiliser la boucle suivante pour fusionner des objets :

for (var attrname in obj2) { obj1[attrname] = obj2[attrname]; }

Cela ajoutera simplement tous attributs d'obj2 en obj1, écrasant potentiellement les propriétés existantes.

Notes supplémentaires

  • Object.assign() fusionne les objets par référence, tandis que la syntaxe étalée crée un nouvel objet.
  • Si vous avez besoin de plus de contrôle sur le processus de fusion, vous pouvez créer des fonctions personnalisées pour cela but.

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:
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