方法一:(双重字段去重)
var arr = [ { id: 1, name: 'vue' },
{ id: 1, name: 'vue' },
{ id: 2, name: 'react' },
{ id: 2, name: 'react' },
{ id: 3, name: 'js' },
{ id: 4, name: 'java' },
{ id: 5, name: 'php' },
{ id: 6, name: 'vue' },
{ id: 7, name: 'vue' } ];
for (var i = 0; i < arr.length - 1; i++) {
for (var j = 1; j < arr.length; j++) {
if (i !== j) {
if (arr[i].id === arr1[j].id && arr[i].name === arr[j].name) {
arr.splice(j, 1);
}
}
}
}
console.log('arr---', arr1);
方法2:(单个字段去重)
var arrData = [ { id: 0, name: '小明' },
{ id: 1, name: '小张' },
{ id: 2, name: '小李' },
{ id: 3, name: '小孙' },
{ id: 1, name: '小周' },
{ id: 2, name: '小陈' } ];
var obj = {};
arrData = arrData.reduce((cur, next) => {
obj[next.id] ? '' : (obj[next.id] = true && cur.push(next));
return cur;
}, []); // 设置cur默认类型为数组,并且初始值为空的数组
console.log('arrData---', arrData); // 打印出数组去重后的结果