javascript普通陣列去重和陣列物件去重

2021-09-19 10:12:51 字數 2729 閱讀 9065

簡單的js陣列去重

var test1 = [1,2,3,4,1,2,'mama'];array.prototype.unique1 = function());        for(var i = 0; i < this.length; i++) // 遍歷當前陣列                }        return temp;    }console.log('陣列排序+去重的實現'+test1.unique1());
陣列物件去重

const data = [      ,      ,      ,      ,    ]; uniqueobj(objarray) ;// 臨時物件    // 將物件陣列中每一項的atc_id值作為屬性,若temp不擁有此屬性時則為temp新增此屬性且將其值賦為true,並將這一項push到結果陣列中    for (let i = 0; i < objarray.length; i++)       temp[atc_id] = true;// 為temp新增此屬性(atc_id)且將其值賦為true      result.push(objarray[i]); // 將這一項複製到結果陣列result中去    }    return result;  }  console.log('uniqueobj(data)', uniqueobj(data));
拓展知識:

由於上面的資料是在資料庫中通過多表查詢出來的,所以出現了相同atc_id,不同atc_label(標籤)的文章

我的目標是拿到唯一的文章和該文章對應的乙個或多個標籤(atc_label);像下圖這樣:

const data = [      ,      ,      ,      ,    ]; uniqueobj(objarray) ;// 臨時物件    // 將物件陣列中每一項的atc_id值作為屬性,若temp不擁有此屬性時則為temp新增此屬性且將其值賦為true,並將這一項push到結果陣列中    for (let i = 0; i < objarray.length; i++)       temp[atc_id] = true;// 為temp新增此屬性(atc_id)且將其值賦為true      result.push(objarray[i]); // 將這一項複製到結果陣列result中去    }    return result;  }const temp = uniqueobj(data); temp.foreach(item1 =>      item1.labellist = labellist;   }); }); console.log('temp2', temp);
簡單的js陣列去重

var test1 = [1,2,3,4,1,2,'mama'];array.prototype.unique1 = function());        for(var i = 0; i < this.length; i++) // 遍歷當前陣列                }        return temp;    }console.log('陣列排序+去重的實現'+test1.unique1());
陣列物件去重

const data = [      ,      ,      ,      ,    ]; uniqueobj(objarray) ;// 臨時物件    // 將物件陣列中每一項的atc_id值作為屬性,若temp不擁有此屬性時則為temp新增此屬性且將其值賦為true,並將這一項push到結果陣列中    for (let i = 0; i < objarray.length; i++)       temp[atc_id] = true;// 為temp新增此屬性(atc_id)且將其值賦為true      result.push(objarray[i]); // 將這一項複製到結果陣列result中去    }    return result;  }  console.log('uniqueobj(data)', uniqueobj(data));
拓展知識:

由於上面的資料是在資料庫中通過多表查詢出來的,所以出現了相同atc_id,不同atc_label(標籤)的文章

我的目標是拿到唯一的文章和該文章對應的乙個或多個標籤(atc_label);像下圖這樣:

const data = [      ,      ,      ,      ,    ]; uniqueobj(objarray) ;// 臨時物件    // 將物件陣列中每一項的atc_id值作為屬性,若temp不擁有此屬性時則為temp新增此屬性且將其值賦為true,並將這一項push到結果陣列中    for (let i = 0; i < objarray.length; i++)       temp[atc_id] = true;// 為temp新增此屬性(atc_id)且將其值賦為true      result.push(objarray[i]); // 將這一項複製到結果陣列result中去    }    return result;  }const temp = uniqueobj(data); temp.foreach(item1 =>      item1.labellist = labellist;   }); }); console.log('temp2', temp);

JavaScript 陣列去重

陣列去重,一般都是在面試的時候才會碰到,一般是要求手寫陣列去重方法的 如果是被提問到,陣列去重的方法有哪些?你能答出其中的10種,面試官很有可能對你刮目相看。在真實的專案中碰到的陣列去重,一般都是後台去處理,很少讓前端處理陣列去重。雖然日常專案用到的概率比較低,但還是需要了解一下,以防面試的時候可能...

Javascript陣列去重

set是es2015引入的資料型別,意為集合 其不允許重複元素出現的特性,對於nan undefined null都適用 set是es2015引入的資料型別,意為集合 其不允許重複元素出現的特性,對於nan undefined null都適用 function unique arr var arr ...

JavaScript陣列去重

例1定義乙個簡單的一維陣列 let myarr 0 1,3 2,4 3,3 4,5 6,1 7,8 方法一 使用es6的set let myarr 0 1,3 2,4 3,3 4,5 6,1 7,8 let result newset myarr sort a,b console.log resul...