Ce sont mes données:
[
{
url: 'www.example.com/hello',
id: "22"
},
{
url: 'www.example.com/hello',
id: "22"
},
{
url: 'www.example.com/hello-how-are-you',
id: "23"
},
{
url: 'www.example.com/i-like-cats',
id: "24"
},
{
url: 'www.example.com/i-like-pie',
id: "25"
}
]
Avec Lodash, comment supprimer des objets avec des clés d'identification en double? Quelque chose avec un filtre, une carte et unique, mais pas tout à fait sûr.
Mon ensemble de données réel est beaucoup plus grand et a plus de clés, mais le concept devrait être le même.
la source
uniq
qui se prononce vous-genou-file d'attente au lieu de ce qu'il devrait être,unique
...Vous pouvez utiliser la méthode lodash _.uniqAvec, elle est disponible dans la version actuelle de lodash 4.17.2.
Exemple:
Plus d'informations: https://lodash.com/docs/#uniqWith
la source
Ou utilisez simplement union , pour un tableau simple.
la source
_.union([1, 2, 2, 1, 3]) => [1, 2, 3]
Utilisez simplement _.uniqBy () . Il crée une version sans doublon d'un tableau.
Il s'agit d'une nouvelle façon et disponible à partir de la version 4.0.0.
ou
la source
Avec lodash version 4+, vous supprimeriez les objets en double soit par propriété spécifique, soit par l'objet entier comme ceci:
Source: https://www.codegrepper.com/?search_term=Lodash+remove+duplicates+from+array
la source
Vous pouvez également utiliser unionBy pour 4.0.0 et versions ultérieures, comme suit: let uniques = _.unionBy (data, 'id')
la source
Pour un tableau simple, vous avez l'approche d'union, mais vous pouvez également utiliser:
la source