原生 JS 实现 uniqBy
// 原生 JS 实现 uniqBy
const uniqBy = (arr, key) => {
const seen = new Set()
return arr.filter((item) => {
const val = item[key]
if (seen.has(val)) return false
seen.add(val)
return true
})
}
使用示例
// 使用示例
const data = [
{name: 'bob', value: 1},
{name: 'lili', value: 3},
{name: 'bob', value: 1},
{name: 'mary', value: 10},
]
const res = uniqBy(data, 'value')