【发布时间】:2020-01-02 04:57:48
【问题描述】:
我有一个函数接受一个狗对象数组并返回一个包含所有所有者姓名的数组。
dogs = [
{name: 'Archie', breed: 'Lurcher', owner: 'Jack'},
{name: 'Charlie', breed: 'Pug', owner: 'John'},
{name: 'Buddy', breed: 'Pug', owner: 'Mike'}
]
我通过链接过滤器和映射得到结果,但这意味着我在同一个列表上循环了两次。我知道这可以使用 Reduce 来完成,但不确定我将如何做到这一点。很多关于 Reduce 的例子似乎都带有数字,当我试图解决我的问题时,这有点令人困惑。
任何帮助将不胜感激。谢谢
function getOwners(dogs) {
return dogs.filter(dog => dog.breed === 'Pug').map(dog => dog.owner);
}
returns ['John', 'Mike']
【问题讨论】:
标签: javascript reduce