1. 程式人生 > >js 去掉陣列物件中的重複物件

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"}]