js 去掉数组对象中的重复对象

export function deteleObject(obj) {
var uniques = [];
var stringify = {};
for (var i = 0; i < obj.length; i++) {
var keys = Object.keys(obj[i]);
keys.sort(function(a, b) {
return (Number(a) - Number(b));
});
var str = '';
for (var j = 0; j < keys.length; j++) {
str += JSON.stringify(keys[j]);
str += JSON.stringify(obj[i][keys[j]]);
}
if (!stringify.hasOwnProperty(str)) {
uniques.push(obj[i]);
stringify[str] = true;
}
}
uniques = uniques;
return uniques;
}

调用-

 

let obj = [{
"name": "1",
"url": "1u"
}, {
"name": "1",
"url": "1r"
}, {
"name": "2",
"url": "1u"
},{

"name": "1",

"url": "1u"

}];

console.log(deteleObject(obj))   // [{"name": "1","url": "1u"},{"name": "1","url": "1r"},{"name": "2","url": "1u"}]

 

posted @ 2019-02-14 09:53  Angel-01  阅读(572)  评论(0编辑  收藏  举报