• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

110
Views
How to filter array key by another array number key

I have 2 array, first array structure is:

items: [
    {
      name: "a",
      items: [
         { name: "jack" },
         { name: "jose" },
      ]
    },
    {
      name: "b",
      items: [
         { name: "lara" },
         { name: "jo" },
      ]
    },
    {
      name: "c",
      items: [
         { name: "andy" },
         { name: "hary" },
      ]
    }
]

and the second array:

number: [
  0: [0, 1],
  1: [1],
  2: [0]
]

How to filter "items" by "number" and How can such an output be obtained? (the best solution)

{["jack", "jole"],["jo"],["andy"]}
almost 3 years ago · Juan Pablo Isaza
2 answers
Answer question

0

A few maps would do it:

the output you wish is not valid JS so I made a nested array

const arr1 = [{ name: "a", items: [{ name: "jack" }, { name: "jose" }, ] }, { name: "b", items: [{ name: "lara" }, { name: "jo" }, ] }, { name: "c", items: [{ name: "andy" }, { name: "hary" }, ] } ], numbers = [ [0, 1], [1], [0] ]; 

const res = numbers
  .map((arr, i) => arr
    .map(key => arr1[i].items[key].name)
  )
console.log(res)

almost 3 years ago · Juan Pablo Isaza Report

0

If your number variable has to be an Object.

let items = [
  {
    name: "a",
    items: [{ name: "jack" }, { name: "jose" }]
  },
  {
    name: "b",
    items: [{ name: "lara" }, { name: "jo" }]
  },
  {
    name: "c",
    items: [{ name: "andy" }, { name: "hary" }]
  }
];

let number = {
  0: [0, 1],
  1: [1],
  2: [0]
};

let result = []
for (const [key, value] of Object.entries(number)){
  let names = []
  value.forEach(value => {
    names.push(items[key].items[value].name)
  })
  result.push(names)
}

console.log(result)

almost 3 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error