Maison >interface Web >js tutoriel >Comment extraire efficacement un sous-ensemble de propriétés d'un objet JavaScript ?

Comment extraire efficacement un sous-ensemble de propriétés d'un objet JavaScript ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-20 05:44:10863parcourir

How to Efficiently Extract a Subset of Properties from a JavaScript Object?

Comment extraire un sous-ensemble de propriétés d'un objet JavaScript

Souvent, lorsque vous travaillez avec des objets JavaScript, il est nécessaire de créer un nouvel objet qui inclut uniquement un ensemble spécifique de propriétés de l’objet d’origine. Par exemple, considérons l'objet suivant :

elmo = { 
  color: 'red',
  annoying: true,
  height: 'unknown',
  meta: { one: '1', two: '2'}
};

Pour créer un nouvel objet avec uniquement les propriétés de couleur et de hauteur, vous pouvez utiliser la déstructuration d'objet :

const subset = { ...elmo, color: 'red', height: 'unknown' }

L'objet de sous-ensemble résultant sera ne contiennent que ces deux propriétés :

{ color: 'red', height: 'unknown' }

Une autre alternative consiste à utiliser Object.assign() méthode :

const subset = Object.assign({}, elmo, { color: 'red', height: 'unknown' })

Cette méthode crée un nouvel objet en fusionnant les propriétés de l'objet existant (dans ce cas, elmo) avec les propriétés nouvellement attribuées.

Enfin, vous pouvez également utiliser la méthode _.pick() de la populaire bibliothèque lodash :

const subset = _.pick(elmo, ['color', 'height'])

Quelle que soit la méthode que vous choisissez, la déstructuration d'objets offre un moyen concis et flexible d'extraire un sous-ensemble de propriétés d'un objet JavaScript.

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