Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

153
Visualizações
¿Cómo devolver una matriz de objetos de un objeto multidimensional?

tengo objeto:

 const salary = { netto: { min: '700.', max: '', }, brutto: { min: '', max: '', }, }

Quiero iterar a través del objeto y devolver una matriz de objetos que se verían como [{name: 'netto_min', value: '700'},...etc] omitiendo claves con valor vacío.

Lo intenté:

 const result = Object.keys(salary).map(type => Object.keys(salary[type]).map(entry => { if(salary[type][entry] !== ''){ return {name: `${type}_${entry}`, value: parseInt(salary[type][entry]).toString()} } }) )

Me consiguió: [[{name: 'netto_min', value: '700'}, undefined],[undefined, undefined]] ¿Cómo puedo obtener [{name: 'netto_min', value: '700'}] en su lugar?

about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

const salary = { netto: { min: "700.", max: "" }, brutto: { min: "", max: "" } }; let result = Object.keys(salary).map(k => { return Object.keys(salary[k]).map(r => ({ name: `${k}_${r}`, value: parseInt(salary[k][r]) })) }).flat().filter( b => !isNaN(b.value))

Devoluciones

 [ { name: 'netto_min', value: 700 } ]

Supongo que el 700. fue un error tipográfico en 700 , fácilmente eliminado

about 4 years ago · Juan Pablo Isaza Relatório

0

Podrías hacer esto:

 const salary = { netto: { min: '700.', max: '', }, brutto: { min: '', max: '', }, } let result = [] for (type in salary) { for (entry in salary[type]) { let obj = {} let value = salary[type][entry] if (value) { obj.name = `${type}_${entry}` obj.value = parseInt(value).toString() result.push(obj) } } } console.log(result)

about 4 years ago · Juan Pablo Isaza Relatório

0

Obtenga las claves, luego filtre esa matriz si esa clave no está vacía. luego repita, empújelo a la matriz y devuélvalo.

 const salary = { netto: { min: '700.', max: '', }, brutto: { min: '', max: '', }, }; var non_empty_salaries = Object.keys(salary).map(name => { var keys = Object.keys(salary[name]); var non_empty = keys.filter(key => salary[name][key] != ''); var non_emptys = []; for (let key of non_empty) { non_emptys.push({ name: `${name}_${key}`, value: salary[name][key] }); } return non_emptys; }); console.log(non_empty_salaries);

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda