javascript-Lodash通过拔取获取嵌套对象属性

我有一个这样的对象数组:

var characters = [
    { 'name': 'barney',  'age': 36, 'salary':{'amount': 10} },
    { 'name': 'fred',    'age': 40, 'salary':{'amount': 20} },
    { 'name': 'pebbles', 'age': 1,  'salary':{'amount': 30} }
];

我想将薪水金额分成一个数组.我设法通过链接两个pluck函数来做到这一点,如下所示:

var salaries = _(characters)
  .pluck('salary')
  .pluck('amount')
  .value();

console.log(salaries); //[10, 20, 30]

有一种方法可以只使用一次拔毛吗? lodash中的其他功能是否有更好的方法?

解决方法:

您可以只给出要用作字符串的路径,像这样

console.log(_(characters).pluck('salary.amount').value())
// [ 10, 20, 30 ]

或直接使用

console.log(_.pluck(characters, 'salary.amount'));
// [ 10, 20, 30 ]
上一篇:Javascript-Lodash在Angular JS中-获取TypeError:对象函数lodash(value)


下一篇:javascript-合并两个对象并删除原始对象中不存在的属性