Table 个对象 - uniq
Table of objects - uniq
我有一个关注table:
[
{ 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)
和一般的下划线,但我失败了。你知道我该怎么做吗?
感谢帮助!
不用下划线也可以很容易地做到这一点:
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);
下面是一个使用下划线的解决方案:
var result = _.uniq(data, function(item){
return _.first( _.keys(item));
})
我有一个关注table:
[
{ 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)
和一般的下划线,但我失败了。你知道我该怎么做吗?
感谢帮助!
不用下划线也可以很容易地做到这一点:
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);
下面是一个使用下划线的解决方案:
var result = _.uniq(data, function(item){
return _.first( _.keys(item));
})