Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

219
Vistas
¿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 Respuestas
Responde la pregunta

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 Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda