这种数组如何去重
let arr = [{ name: 'li', age: 12 }, { name: 'li' age: 12 }]
除了这种方法还有啥更高效的方法去除数组里面对象重复的元素
unique (array) {
var res = []
for (var i = 0, arrayLen = array.length; i < arrayLen; i++) {
for (var j = 0, resLen = res.length; j < resLen; j++) {
if (array[i].name === res[j].name) {
break
}
}
if (j === resLen) {
res.push(array[i])
}
}
return res
}
不考虑兼容性的话可以用ES6的语法特性
Array.from(new Set(arr.map(v => JSON.stringify(v)))).map(v=>JSON.parse(v))