1. 程式人生 > >將數組裡存的json物件去重

將數組裡存的json物件去重

昨天因為一個obj陣列物件裡有重複的物件要去重糾結了很長時間,在javascript高階程式設計裡看見了一個方法跟大家分享一下

filter();

/  //判斷o是否為陣列
function isArray(o) {
    return Object.prototype.toString.call(o) == '[object Array]';
}

//將獲取json 資料根據name進行篩選,將name一樣的放到一個物件裡
function Alpha_Filter_JsonName(resultjson, name) {
        var Obj = [];
    // var json = JSON.stringify(resultjson, ["name", "time"]);
    //isArray(name)判斷name是否為陣列,不是陣列就不能遍歷
     if (isArray(name)) {
         $.each(name, function (key, val) {
             var Filter_Json = resultjson.filter(function (item, index, array) {
                 return item.name == val;
             });
             Obj.push(Filter_Json)
         });
     } else {
         var Filter_Json = resultjson.filter(function (item, index, array) {
             return item.name == name;
         });

         Obj =Filter_Json;
     }
  
    return Obj;
    
}