小编Dal*_*ale的帖子

Javascript:按筛选器对象列表筛选对象列表

我目前有两个不同的对象列表,一个需要过滤另一个.这是他们目前的样子.

var heroes = [
    {
      name: "warrior",
      primary_skill: "greater bash",
      attack_type: "melee",
      attribute: "strength"
    },
    {
      name: "ranger",
      primary_skill: "focus fire",
      attack_type: "range",
      attribute: "agility"
    },
    {
      name: "mage",
      primary_skill: "oblivion",
      attack_type: "magic",
      attribute: "intelligence"
    },
    {
      name: "soldier",
      primary_skill: "sword dance",
      attack_type: "melee",
      attribute: "strength"
    }
]
Run Code Online (Sandbox Code Playgroud)

哪个应该通过以下过滤

var filters = [
    { attack_type: "melee" },
    { attribute: "strength" }
]
Run Code Online (Sandbox Code Playgroud)

过滤器应该以"和"方式工作,因此这将过滤英雄列表,以便仅显示具有strength属性的近战英雄.

这是我到目前为止的尝试,但我没有取得多大进展:

const filteredHeroes = heroes.filter(
    hero => {
        return filters.some( 
            filter => {
                return filter.attack_type === …
Run Code Online (Sandbox Code Playgroud)

javascript ecmascript-6 reactjs

2
推荐指数
1
解决办法
786
查看次数

标签 统计

ecmascript-6 ×1

javascript ×1

reactjs ×1