Maison > interface Web > js tutoriel > Comment supprimer les objets en double d'un tableau en JavaScript ?

Comment supprimer les objets en double d'un tableau en JavaScript ?

Mary-Kate Olsen
Libérer: 2024-12-27 20:17:10
original
284 Les gens l'ont consulté

How to Remove Duplicate Objects from an Array in JavaScript?

Comment éliminer les objets en double d'un tableau

Votre requête consiste à supprimer efficacement les objets en double d'un tableau au sein d'un objet. Explorons quelques techniques efficaces pour atteindre cet objectif.

Solution ES6 :

En introduisant une touche d'élégance ES6, nous pouvons utiliser les méthodes filter et findIndex :

obj.arr = obj.arr.filter((value, index, self) =>
  index === self.findIndex((t) => (
    t.place === value.place && t.name === value.name
  ))
);
Copier après la connexion

Cette approche garantit que seuls les objets uniques restent dans le tableau.

Générique Solution :

Pour une solution plus polyvalente, envisagez :

const uniqueArray = obj.arr.filter((value, index) => {
  const _value = JSON.stringify(value);
  return index === obj.arr.findIndex(obj => {
    return JSON.stringify(obj) === _value;
  });
});
Copier après la connexion

Cette méthode utilise la stringification JSON pour comparer des objets en fonction de leurs valeurs de propriété.

Filtrage basé sur les propriétés :

Alternativement, vous pouvez définir une fonction pour comparer les objets par des critères spécifiques. propriétés :

const isPropValuesEqual = (subject, target, propNames) =>
  propNames.every(propName => subject[propName] === target[propName]);

const getUniqueItemsByProperties = (items, propNames) => 
  items.filter((item, index, array) =>
    index === array.findIndex(foundItem => isPropValuesEqual(foundItem, item, propNames))
  );
Copier après la connexion

Cette fonction renvoie un tableau contenant des objets uniques basés sur les noms de propriétés spécifiés.

Explication :

  • filtre : Supprime les objets en double qui satisfont aux critères donnés critère.
  • findIndex : Renvoie l'index de la première occurrence d'un objet qui correspond à un critère spécifié.

En tirant parti de ces techniques, vous pouvez supprimer efficacement dupliquez les objets d'un tableau, vous permettant de travailler avec un ensemble de données propre et concis.

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