一、简单数组去重(IE8以下不支持数组的indexOf()方法)
function isDuplicate(arr) {
var temp = [] //临时数组
for (var i = 0; i < arr.length; i++) {
if (temp.indexOf(arr[i]) == -1) {
temp.push(arr[i])
}
}
return temp
};
var array = [12, 87, 45, 12, 9, 8, 3, 9];
console.log(isDuplicate(array)); //[12, 87, 45, 9, 8, 3]
二、数组键值对去重
var arr = [{
key: '01',
value: '王元宝'
}, {
key: '02',
value: '吴富贵'
}, {
key: '01',
value: '王元宝'
}, {
key: '04',
value: '吴富贵'
}];
// 方法1:利用对象访问属性的方法,判断对象中是否存在key
var result = [], obj = {};
for (var i = 0; i < arr.length; i++) {
if (!obj[arr[i].key]) {
result.push(arr[i])
obj[arr[i].key] = true
}
}
console.log(result); // [ {key: "01", value: "王元宝"}, {key: "02", value: