Lodash - 如何获得多个结果

9 javascript lodash

我正在使用lodash.我喜欢.

我有一个用户数组,如下所示:

var users = [{
    'user': 'barney',
    'age': 36,
    'active': true
}, {
    'user': 'fred',
    'age': 40,
    'active': false
}, {
    'user': 'pebbles',
    'age': 1,
    'active': true
}];
Run Code Online (Sandbox Code Playgroud)

这是我如何找到第一个用户并采取user财产:

_.result(_.find(users, 'active', false), 'user');
// 'fred'
Run Code Online (Sandbox Code Playgroud)

不过,我想掐了userage值.我怎么写这个?

Wil*_*ith 5

如果您只想从单个结果中选择userage列,可以使用pick()函数,如下所示:

_.pick(_.find(users, 'active'), ['user', 'age']);
// 'barney', 36
Run Code Online (Sandbox Code Playgroud)

如果你想过滤和项目,那么你可以使用where()map():

_.map(_.where(users, 'active'), _.partialRight(_.pick, ['user', 'age']));
// [{ name: 'barney', age: 36 }, { user: 'pebbles', age: 1 } ]
Run Code Online (Sandbox Code Playgroud)

  • 谢谢你的回答Will Smith (2认同)