面试题之数组去重
利用indexOf属性,判断新数组里是否存在原数组中的值,当小于0,证明没有这个元素,就添加其道新数组,从而达到去重的作用
var arr = [3,3,5,4,3,6,5];
var arr1 = [];
for(var i = 0;i<arr.length;i++){
if(arr1.indexOf(arr[i])<0){
arr1.push(arr[i]);
}
}
console.log(‘arr1’,arr1);
数组中对象去重
function delRepeat(arr, name) {
var obj= {};
return arr.reduce(function (item, next) {
obj[next[name]] ? '' : obj[next[name]] = true && item.push(next);
return item;
}, []);
}
console.log(delRepeat(arr, "name"));
另一种数组中对象去重
let array = [
{
name:'费率表.xlsx',
data:'111111'
},
{
name:'车型.xlsx',
data:'5654'
},
{
name:'费率表.xlsx',
data:'11111'
},
]
var result = [];
var obj = {};
for(var i =0; i<array.length; i++){
if(!obj[array[i].name]){
result.push(array[i]);
obj[array[i].name] = true;
}
}
console.log(result) ;