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

136
Views
¿Cómo transformo este objeto para que se vea así?

Estoy tratando de cambiar el valor de un objeto que está en una matriz anidada en un objeto. Ni siquiera sé si expliqué cómo está anidado lo suficientemente bien ...

esto es lo que parece

 { household and furniture: [{…}, {…}], school stuffs: [{…}, {…}] }

entonces, traté de mapearlo y obtuve mi código para que se viera así ahora ...

 { 0: {school stuffs: [{…}, {…}]}, 1: {household and furniture:[{…}, {…}]} }

¿Cómo hago para que los datos se vean exactamente como eran inicialmente (sin el 0 y el 1 como teclas) después de editar el campo?

aquí está el código que usé para editar el campo

 const checkAll = e => { const newArray = Object.keys(productArray).map(elem => { return {[elem]: productArray[elem].map(innerElem => { return { ...innerElem, completed: e.target.checked } }) } }) console.log({...newArray}) setProductArray(newArray) }
about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

0

Está utilizando un map que esencialmente devuelve un Array y está esperando un Object . Cuando se propaga usando {...newArray} , se propaga la matriz usando los índices como claves para el objeto resultante, por lo tanto, el 0 y el 1 . Idealmente, puede usar un reduce para devolver un objeto y usarlo directamente.

 const checkAll = e => { const obj = Object.keys(productArray).reduce((acc, curr) => { acc[curr] = [...productArray[curr].map(item => ({...item, completed: e.target.checked})); return acc; }, {}); console.log(obj); setProductArray(obj) }
about 4 years ago · Juan Pablo Isaza Report

0

Puedes hacerlo en una sola línea:

 const obj ={household and furniture: [{…}, {…}],school stuffs:[{…},{…}] } let flatObj = Object.values(obj).reduce((acc, curr) => ({ ...acc, ...curr }), {});

about 4 years ago · Juan Pablo Isaza Report

0

¿Puedes hacer algo así?

 const example = { hello : {name : "kareem"} , example : [1,2] } const converter = (inp)=>{ return Object.assign({},Object.keys(inp).map(key=> {return {[key] : inp[key]}})) } console.log(converter(example))

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!