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

2019-05-26 10:58:30 浏览数 (1)

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

输入

代码语言:javascript复制
const users = [{
  id: 1, name: "a"
}, {
  id: 2, name: "a"
}, {
  id: 3, name: "b"
}, {
  id: 4, name: "v"
}];

推荐方法

代码语言:javascript复制
Array.prototype.unique = function () {
  let arr = this.map((item) => {return item.name });
  return Array.from(new Set(arr));};

其他方法

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

代码语言:javascript复制
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;
};

0 人点赞