对象数组去重,

项目中使用map结合filter做一个对象数组去重

        unique: function(arr, type) {
            const res = new Map();
            //has查找第一个值,没找到了就set加这条数据,满足这两个条件就过滤出来。如果有重复的话has就过不去
            return arr.filter((a) => !res.has(a[type]) && res.set(a[type], 1));
        },
//data为传的数组,name是根据那个字段来去重
unique(data, "name");

你可能感兴趣的:(前端,javascript,算法)