后端返回数组对象(id重复)来去重并保留第一个1
var arr = [
{ id: "0001", name: "张三" },
{ id: "0001", name: "李四" },
{ id: "0002", name: "李6" },
{ id: "0004", name: "李7" },
{ id: "0002", name: "李8" }
];
var newarr = [
...new Set(
arr.map(e => {
return e.id;
})
)
].map(e => {
return arr.find(a => {
return e == a.id;
});
});
console.log("newarr", newarr);
思路先把id取出来然后去重复然后在拿这些id去find对应的对象(因为find寻找到第一个也就不会往下找了)。执行~~~
当后端大哥抛这个问题给我们的时候,虽然这个东西数据库出来 一个DISTINCT不就完事了。但是他可能遇到了种种的问题无法给我们实现(这个时候拿刀找他谈谈就好了)来解决下这个问题 ↩︎