博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

js数组根据对象中的元素(相同的属性值)去重

Posted on 2021-01-13 14:29  小易的博客  阅读(999)  评论(0编辑  收藏  举报

 

如题 代码如下

 

var arr2 = [

  { name: "name1", num: "1" },

  { name: "name2", num: "11" },

  { name: "name3", num: "12" },

  { name: "name4", num: "13" },

  { name: "name2", num: "1" },

  { name: "name6", num: "12" }

]

function arrayUnique2(arr, name) {

  var hash = {};

  return arr.reduce(function (item, next) {

    hash[next[name]] ? '' : hash[next[name]] = true && item.push(next);

    return item;

  }, []);

}

console.log(arrayUnique2(arr2, "name"));

console.log(arrayUnique2(arr2, "num"));