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

216
Visualizações
¿Cómo podría resolver esta matriz de javascript?

Tengo un catálogo de moda, un inventario de artículos. Cada diseñador tiene una línea de artículos. Cada artículo tiene un nombre y un precio.

Tengo que escribir una función que recibirá como parámetro una matriz. La función tiene que acceder a todos los elementos de cada diseñador y devolver una matriz como :

 [ [designer name, shoe name, price], [designer name, shoe name, price], ... ]

Pero estoy atascado con esto: (( este es mi regreso ))

 [ 'Brunello Cucinelli', [ 'tasselled black low-top lace-up', 1000 ], 'Brunello Cucinelli', [ 'tasselled green low-top lace-up', 1100 ], 'Brunello Cucinelli', [ 'plain beige suede moccasin', 950 ], 'Brunello Cucinelli', [ 'plain olive suede moccasin', 1050 ], 'Gucci', [ 'red leather laced sneakers', 800 ], 'Gucci', [ 'black leather laced sneakers', 900 ] ] 

 var currentInventory = [ //array with data { name: 'Brunello Cucinelli', shoes: [ { name: 'tasselled black low-top lace-up', price: 1000 }, { name: 'tasselled green low-top lace-up', price: 1100 }, { name: 'plain beige suede moccasin', price: 950 }, { name: 'plain olive suede moccasin', price: 1050 } ] }, { name: 'Gucci', shoes: [ { name: 'red leather laced sneakers', price: 800 }, { name: 'black leather laced sneakers', price: 900 } ] } ]; function renderInventory(inventory) { let matrix = [] let props = [] for(let i=0; i < inventory.length; i++){ //loop 1 inventory matrix.push(inventory[i].name) for(let n=0; n < inventory[i].shoes.length; n++){ //loop 2 shoes() props.push(matrix[i]) props.push(Object.values(inventory[i].shoes[n])) } //end loop 2 } //end loop 1 return props; } renderInventory(currentInventory)

¿Alguna ayuda por favor?

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

0

Puede usar una llamada map() anidada y luego aplanar el resultado (aquí usando flatMap() que combina las operaciones). Este ejemplo también utiliza la desestructuración con alias.

 const currentInventory = [{ name: 'Brunello Cucinelli', shoes: [{ name: 'tasselled black low-top lace-up', price: 1000 }, { name: 'tasselled green low-top lace-up', price: 1100 }, { name: 'plain beige suede moccasin', price: 950 }, { name: 'plain olive suede moccasin', price: 1050 }] }, { name: 'Gucci', shoes: [{ name: 'red leather laced sneakers', price: 800 }, { name: 'black leather laced sneakers', price: 900 }] }]; const result = currentInventory .flatMap(({ name: designer, shoes }) => shoes.map(({ name: shoe, price }) => [designer, shoe, price]) ) 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