首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用高阶函数,如果一个对象值为真,则返回另一个对象值(JavaScript)

使用高阶函数,如果一个对象值为真,则返回另一个对象值(JavaScript)
EN

Stack Overflow用户
提问于 2018-08-21 20:42:25
回答 5查看 63关注 0票数 0

我有一个对象:

代码语言:javascript
运行
复制
const animals = [
    {name: 'Fluffy', species: 'cat'},
    {name: 'Crinkle', species: 'rabbit'},
    {name: 'Wally', species: 'dog'},
    {name: 'Roo', species: 'dog'},
    {name: 'Felix', species: 'cat'},
]

我想使用一个更高阶的函数,比如filter()方法来获取动物对象的数组,并返回一个只包含所有狗的名字的数组,即["Wally", "Roo"]。目前,我的代码返回一个包含整个对象的数组,其中包含物种狗。如下所示:

代码语言:javascript
运行
复制
const dogArray = animals.filter(function(animal) {
  return animal.species === 'dog';
 })

return dogArray;

// returns
// [{name: "Wally", species: "dog"}, 
// { name: "Roo", species: "dog"}]
EN

Stack Overflow用户

发布于 2018-08-21 20:45:17

代码语言:javascript
运行
复制
const animals = [
{name: 'Fluffy', species: 'cat'},
{name: 'Crinkle', species: 'rabbit'},
{name: 'Wally', species: 'dog'},
{name: 'Roo', species: 'dog'},
{name: 'Felix', species: 'cat'},
]

var result = animals.filter(val=>val.species=="dog").map(({name})=>name);

console.log(result);

票数 0
EN
查看全部 5 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51948940

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档