我有一张桌子:
[
{ somename1:
{
field1: 'field1',
field2: 'field2',
field3: [Object]
}
},
{ somename2:
{
field1: 'field1',
field2: 'field2',
field3: [Object]
}
},
{ somename1:
{
field1: 'field1',
field2: 'field2',
field3: [Object]
}
}
]
我想获得的是:
[
{ somename1:
{
field1: 'field1',
field2: 'field2',
field3: [Object]
}
},
{ somename2:
{
field1: 'field1',
field2: 'field2',
field3: [Object]
}
}
]
我已经尝试过使用_.uniq(table)
和一般的下划线,但我失败了。你知道我该怎么办吗?
感谢您的帮助!
答案 0 :(得分:0)
如果没有下划线,你可以很容易地做到这一点:
var o = [ { somename1:
{ field1: 'field1',
field2: 'field2',
field3: [Object]
}
},
{ somename2:
{ field1: 'field1',
field2: 'field2',
field3: [Object]
}
},
{ somename1:
{ field1: 'field1',
field2: 'field2',
field3: [Object]
}
} ];
var tmp = [], res = [];
o.forEach(function(a, i) {
var key = Object.keys(a)[0];
if (tmp.indexOf(key) < 0) {
tmp.push(key);
res.push(o[i]);
}
});
console.log(res);
答案 1 :(得分:0)
以下是使用下划线的解决方案:
var result = _.uniq(data, function(item){
return _.first( _.keys(item));
})