У меня есть следующая коллекция:
var columns = [
{ key:'url', width:20, type:'text' },
{ key:'title', width:21, type:'text' },
{ key:'desc', width:22, type:'text' },
{ key:'domain', width:23, type:'text' },
{ key:'user', width:24, type:'text' }
];
Я ищу метод для сопоставления массива объектов с выбранными ключами, что-то вроде строк:
_.mapPick(columns, [width])
// [{width:20},{width:21},{width:22},{width:23},{width:24}]
Я знаю, что могу расширять lo-dash следующим образом:
_.mixin({
mapPick: mapPick:function (objs,keys){
return _.map(objs, function (obj) {
return _.pick(obj,keys)
})
}
});
Я не уверен, есть ли какая-то собственная функция, которую я пропускаю.
Я нашел аналогичный вопрос здесь, но я ищу более подходящий путь.