【问题标题】:How to create an array that would contain only elements within items elements that contain "ball" in JavaScript?如何创建一个数组,该数组仅包含 JavaScript 中包含“ball”的 items 元素中的元素?
【发布时间】:2021-03-05 12:02:41
【问题描述】:

我正在尝试从项目项中创建一个包含项目“球”的数组?

const array = [
  {
    username: "john",
    team: "red",
    score: 5,
    items: ["ball", "book", "pen"]
  },
  {
    username: "becky",
    team: "blue",
    score: 10,
    items: ["tape", "backpack", "pen"]
  },
  {
    username: "susy",
    team: "red",
    score: 55,
    items: ["ball", "eraser", "pen"]
  },
  {
    username: "tyson",
    team: "green",
    score: 1,
    items: ["book", "pen"]
  },

];

【问题讨论】:

  • 你已经用filter 标记了这个,所以你似乎已经知道该怎么做了。请向我们展示您尝试过的代码,并描述它是如何失败的。
  • 不要将您的尝试粘贴为评论!将其放入您的原始问题中,并应用正确的代码格式。

标签: javascript arrays dictionary filter


【解决方案1】:

您可以使用filter 方法仅选择您想要的项目。在这种情况下是这样的。

array.filter(o=>o.items.includes('ball'));

【讨论】:

    【解决方案2】:

    你可以用我的:

    const array = [
      {
        username: "john",
        team: "red",
        score: 5,
        items: ["ball", "book", "pen"]
      },
      {
        username: "becky",
        team: "blue",
        score: 10,
        items: ["tape", "backpack", "pen"]
      },
      {
        username: "susy",
        team: "red",
        score: 55,
        items: ["ball", "eraser", "pen"]
      },
      {
        username: "tyson",
        team: "green",
        score: 1,
        items: ["book", "pen"]
      },
    
    ];
    
    const ballArr = array.filter((item) => item.items.includes("ball"));
    
    console.log(ballArr);
    

    【讨论】:

    • @theWellHopeErr 已经用filter 发布了这个方法。
    • 只因为我做了细节让你轻松想象:v
    • @tranminhquang 你指的是什么细节?您的答案比现有答案的解释
    • 因为我很着急:我只是编写代码以给出正确的结果
    猜你喜欢
    • 1970-01-01
    • 2014-05-02
    • 2014-12-20
    • 2021-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-30
    • 1970-01-01
    相关资源
    最近更新 更多