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));
})