参考 数组对象去重
数据如下:
[{ name: 'zs', age: 15 }, { name: 'lisi' }, { name: 'zs' }]
想要将 name 为 zs 的数据去重,优先保留第一条相同数据
解决方法
reduce 去重
let hash = {}
function unique(arr, initialValue) {
  return arr.reduce(function (previousValue, currentValue, index, array) {
    hash[currentValue.name] ? '' : (hash[currentValue.name] = true && previousValue.push(currentValue))
    return previousValue
  }, initialValue)
}
const uniqueArr = unique([{ name: 'zs', age: 15 }, { name: 'lisi' }, { name: 'zs' }], [])
console.log(uniqueArr) // uniqueArr.length == 2
