【发布时间】:2018-06-10 13:44:33
【问题描述】:
我有 2 个这样的数组 ...
var heroes = [{
name: "Batman",
franchise: "DC"
},
{
name: "Ironman",
franchise: "Marvel"
},
{
name: "Thor",
franchise: "Marvel"
},
{
name: "Superman",
franchise: "DC"
}
];
var stars = ["Thor", "Superman"];
var marvelHeroes = heroes.filter(function(hero) {
return stars.indexOf(hero.name) >= 0;
});
console.log(marvelHeroes);
此代码返回“未定义”。所以本质上我正在尝试根据另一个数组中的值过滤一个数组。
有人可以告诉我我做错了什么吗?谢谢
我的预期输出是一个对象数组,如下所示...
[
{name: "Thor", franchise: "Marvel"},
{name: "Superman", franchise: "DC"}
];
我看到了类似的问题here,但该解决方案对我不起作用...
【问题讨论】:
-
您要选择哪个
hero?选择hero[index].name -
我将您的代码转换为 sn-p 并将对象记录到控制台。它按预期工作。
标签: javascript jquery