3 回答

TA贡献1779条经验 获得超6个赞
对不起,如果我没有正确理解你的问题,但如果你想删除data数组中具有相同值的重复对象,你可以这样做
let x1 = [{"data":"hello","id":2},{"data":"hellr","id":17},{"data":"hellr","id":24}];
x1 = x1.filter((item, index, self) => self.findIndex(i => i.data === item.data) === index);

TA贡献1853条经验 获得超9个赞
您可以将结果传递Array#map给Set构造函数以查找所有唯一data值。
let x1=[{"data":"hello","id":2},{"data":"hellr","id":17},{"data":"hellr","id":24}];
const set = new Set(x1.map(({data})=>data));
console.log([...set]);
如果您需要对象本身,您可以Array#filter在添加到Set.
let x1=[{"data":"hello","id":2},{"data":"hellr","id":17},{"data":"hellr","id":24}];
const set = new Set;
const res = x1.filter(({data})=>!set.has(data) && set.add(data));
console.log(res);
添加回答
举报