可能会有这样的情况:数组中的value是对象形式,需要对其进行去重。
一个简单的方法
let students = [
{
name: 'jack',
age: 16
},
{
name: 'nike',
age: 17
},
{
name: 'may',
age: 16
},
{
name: 'jack',
age: 17
}
]
//默认取第一个
function deduplication(arr, key) {
let res = [];
arr.forEach(item => {
let i = res.findIndex(item1 =>item1[key] === item[key])
if(i < 0) {
res.push(item)
}
})
return res
}
console.log(deduplication(students, 'name'))
//[{"name":"jack","age":16},{"name":"nike","age":17},{"name":"may","age":16}]