我有一个对象:
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"]。目前,我的代码返回一个包含整个对象的数组,其中包含物种狗。如下所示:
const dogArray = animals.filter(function(animal) {
return animal.species === 'dog';
})
return dogArray;
// returns
// [{name: "Wally", species: "dog"},
// { name: "Roo", species: "dog"}]发布于 2018-08-21 20:45:17
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);
https://stackoverflow.com/questions/51948940
复制相似问题