比较underscorejs uniq iteratee

时间:2016-01-10 09:14:13

标签: javascript underscore.js

我使用了underscorejs uniq方法。

_.uniq(
    [{ name: 'a', family: 't' }, { name: 'b', family: 'n' }], 
    false, 
    function (item, key, a) { return item.name; }
);

Iteratee函数只返回一个属性。但我想比较名称和家庭创建唯一列表。怎么办?

1 个答案:

答案 0 :(得分:1)

试试这段代码:

_.uniq(
    [
        {name: 'a', family: 't'}, 
        {name: 'b', family: 'n'}, 
        {name: 'a', family: 'd'}, 
        {name: 'a', family: 't'}
    ], 
    false, 
    function (item, key, a) { return 'n=' + item.name + ';f=' + item.family; }
);

它将生成一个只有三个对象的数组:

[{name: 'a', family: 't'}, {name: 'b', family: 'n'}, {name: 'a', family: 'd'}]