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

121
Visualizações
Agrupación de valores en una matriz de objetos de dos objetos en función de claves diferentes

Necesito agrupar dos objetos en una matriz de objetos.

Objetos iniciales:

 {strIngredient1: 'Light rum', strIngredient2: 'Lime', strIngredient3: 'Sugar', strIngredient4: 'Mint', strIngredient5: 'Soda water'} {strMeasure1: '2-3 oz ', strMeasure2: 'Juice of 1 ', strMeasure3: '2 tsp ', strMeasure4: '2-4 '}

Me gustaría que la matriz final de objeto se vea así:

 [ {ingredient: 'Light rum', measure: '2-3 oz'}, {ingredient: 'Lime', measure: 'Juice of 1'}, etc... (if no measure, fill with empty string) ]

He intentado analizar los objetos en dos matrices en función de las claves y los valores, luego recorrer ambas matrices y generar los valores en función del número en las claves, sin embargo, tiene que haber una forma más eficiente de obtener el resultado deseado. ¿Alguna sugerencia?

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

0

Puede recorrer las claves del objeto de ingredientes y crear la matriz deseada cortando el número de ingrediente y buscando la medida correspondiente para ese número.

 const ingredients = { strIngredient1: "Light rum", strIngredient2: "Lime", strIngredient3: "Sugar", strIngredient4: "Mint", strIngredient5: "Soda water" }, measurements = { strMeasure1: "2-3 oz", strMeasure2: "Juice of 1", strMeasure3: "2 tsp", strMeasure4: "2-4" }, result = Object.keys(ingredients).map((k) => ({ ingredient: ingredients[k], measure: measurements[`strMeasure${k.slice(13)}`] ?? "", })); console.log(result);

about 4 years ago · Juan Pablo Isaza Relatório

0

Podrías separar las llaves y construir un nuevo objeto.

 const data = [{ strIngredient1: 'Light rum', strIngredient2: 'Lime', strIngredient3: 'Sugar', strIngredient4: 'Mint', strIngredient5: 'Soda water' }, { strMeasure1: '2-3 oz ', strMeasure2: 'Juice of 1 ', strMeasure3: '2 tsp ', strMeasure4: '2-4 ' }], keys = { strIngredient: 'ingredient', strMeasure: 'measure' }, result = data.reduce((r, o, i) => { Object.entries(o).forEach(([key, value]) => { const [, k, i] = key.match(/^(.*?)(\d+)$/); (r[i - 1] ??= { ingredient: '', measure: '' })[keys[k]] = value; }); return r; }, []); console.log(result);

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