I have the below array
const values = [
{
name: 'A',
age: 12
},
{
name: 'B',
age: 1
},
{
name: 'A',
age: 31
}
]
and I want using lodash remove an object from this array that has the same name, so it should return:
const values = [
{
name: 'A',
age: 12
},
{
name: 'B',
age: 1
}
]
Using
_.uniqWith(_.isEqual, values)
only remove duplicate if the whole object is duplicated ... How can I remove using property?
CodePudding user response:
Use _.uniqBy()
the name
property instead:
const values = [{"name":"A","age":12},{"name":"B","age":1},{"name":"A","age":31}]
const result = _.uniqBy(values, 'name')
console.log(result)
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.21/lodash.min.js" integrity="sha512-WFN04846sdKMIP5LKNphMaWzU7YpMyCU245etK3g/2ARYbPK9Ub18eG ljU96qKRCWh quCY7yefSmlkQw1ANQ==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>