Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

238
Views
Recepción de error al usar Array.reduce en matriz

Estoy tratando de llamar a esta función deepFilter en una matriz con esta estructura, pero recibo este error en la consola: TypeError: Cannot read properties of undefined (reading 'reduce') y no puedo entender por qué. Estoy seguro de que es algo simple, pero me estoy quedando en blanco.

¿Alguien me puede apuntar en la dirección correcta?

 const items = [ { "name":"Name1", "id":58, "sites":[ { "id":106, "name": "Name11", "items":[ { "name":"01", }, { "name":"02", }, ] } ] }, { "name":"Name2", "id":47, "sites":[ { "name":"Name22", "id":106, "items":[ { "name":"03", }, { "name":"04", }, ] } ] } ]; const deepFilter = (items, value) => items.reduce((arr, cur) => { if (cur.name.includes(value)) arr.push(cur); else if (cur.hasOwnProperty('sites')) { const subItems = deepFilter(cur.subitems, value); if (subItems.length) { cur.subitems = subItems; arr.push(cur); } } else if (cur.hasOwnProperty('items')) { const subSubItems = deepFilter(cur.subsubitems, value); if (subSubItems.length) { cur.subsubitems = subSubItems; arr.push(cur); } } return arr; }, []); console.log(deepFilter(items, '02'));
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Porque su valor en cur.subitems no es una matriz.

puede arreglarlo fácilmente agregando && cur.subitems como este:

 else if (cur.hasOwnProperty('sites') && cur.subitems) {

está utilizando recursividad en su función, por lo que debe verificar los valores en consecuencia.

about 4 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 Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!