Sup*_*per 3 javascript arrays filter
你如何过滤一个对象数组,使得该对象的最后一次出现具有相同的foo支柱?即
给定:
[
{foo:1,id:1},
{foo:1,id:2},
{foo:2,id:3}
]
Run Code Online (Sandbox Code Playgroud)
我想要回来:
[
{foo:1,id:2},
{foo:2,id:3}
Run Code Online (Sandbox Code Playgroud)
我正在使用es6所以我可以从这里开始:
this.data.filter((item,index,self)=> {
return self.findIndex(o => o.foo === item.foo);
})
Run Code Online (Sandbox Code Playgroud)
var index = {};
var data = [{foo:1,id:1},{foo:1,id:2},{foo:2,id:3}];
data.forEach(item => index[item.foo] = item);
index[1];
// {foo:1,id:2}
Object.values(index)
// [{foo:1,id:2},{foo:2,id:3}]
Run Code Online (Sandbox Code Playgroud)