【前端芝士树】如何完成数组的去重 Array Unique?

【前端芝士树】如何完成数组的去重 Array Unique?

输入

const users = [{
  id: 1, name: "a"
}, {
  id: 2, name: "a"
}, {
  id: 3, name: "b"
}, {
  id: 4, name: "v"
}];

推荐方法

Array.prototype.unique = function () {
  let arr = this.map((item) => {return item.name });
  return Array.from(new Set(arr));};

其他方法

1. 利用obj实现数据的去重

Array.prototype.unique2 = function () {
  let obj = {};
  let arr = [];
  this.forEach((item) => {
    if(!obj[item.name]){
      obj[item.name] = true;
    }
  });
  for(let key in obj){
    arr.push(key);
  }
  return arr;
};

相关推荐