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

93
Vistas
Uso de .map en un objeto

solo me preguntaba si alguien podría indicarme la dirección correcta de la funcionalidad .map. Desafortunadamente, esto es algo que me cuesta entender.

Si tuviera un objeto, digamos lo siguiente:

 const myPetsAndFood = { pets:[ { species: "dog", breed: "Labrador", age: 12 }, { species: "cat", breed: "unknown", age: 7, }, { species: "fish", breed: "goldfish", age: 1, } ], food: [ { dogfood: 15.00, }, { catfood: 11.00, }, { fishfood: 4.00, } ], };

¿Alguien podría explicar cómo utilizaría .map para obtener los valores de datos de edad y precio, si es posible, por favor? Una breve explicación o ejemplo es más que suficiente, agradecería cualquier tiempo/entrada posible. Con toda probabilidad, estaré sentado aquí leyendo y tratando de resolverlo mientras tanto.

Si llegaste hasta aquí, gracias por tu tiempo.

about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

Entonces, el .map solo se puede usar con matrices. De esta manera no se puede hacer algo similar a:

 myPetsAndFood.map()

Digamos que quieres hacer console.log la edad. Tendrías que conseguir la matriz primero. Asi que:

 myPetsAndFood.pets.map((pet) => { console.log(pet.age) })

E imprimiría 12, seguido de 7 seguido de 1. Si desea almacenarlo dentro de una matriz, puede crear una matriz y usar .push("//Se desea enviar información//")

about 4 years ago · Juan Pablo Isaza Denunciar

0

Entonces tienes matrices imbricadas aquí. Esto hace que primero tenga que ingresar a su matriz deseada antes de poder ejecutar su mapa.

Por ejemplo: myPetsAndFood.pets.map(function)

La forma en que funciona .map es que ejecuta su función en cada elemento de su matriz y devuelve una matriz con la equivalencia ( fuente ).

Por lo tanto, para obtener la age de cada pet , debe indicarle a su función para obtener la propiedad de age de sus objetos.

Por ejemplo: myPetsAndFood.pets.map((pet) => pet.age)

Esto devolverá una matriz que contiene solo la edad de cada una de sus mascotas.

Ahora el problema con esto es su segunda matriz. No podemos llamar a la función .map en esa matriz porque sus diferentes propiedades no tienen el mismo nombre. Por lo tanto, su .map no tendrá ningún terreno común para devolver una matriz sensible.

Podemos solucionar este problema dividiendo su única variable en dos: name y price por ejemplo. Después de este cambio, ahora podemos llamar correctamente al .map en su matriz diciéndole qué propiedad necesita.

Por ejemplo: myPetsAndFood.foods.map((food) => food.price)

A continuación se muestra un fragmento de código completo que debería mostrar la descripción anterior.

 const myPetsAndFood = { pets:[ { species: "dog", breed: "Labrador", age: 12 }, { species: "cat", breed: "unknown", age: 7, }, { species: "fish", breed: "goldfish", age: 1, } ], foods: [ { name: "dog", price: 15.00, }, { name: "cat", price: 11.00, }, { name: "fish", price: 4.00, } ], }; const catAge = myPetsAndFood.pets.map((pet) => pet.age) const foodPrice = myPetsAndFood.foods.map((food) => food.price) console.log(catAge) console.log(foodPrice)

about 4 years ago · Juan Pablo Isaza Denunciar

0

map es un método de matrices, no existe en los objetos. Podría usarlo en las matrices dentro del objeto ( myPetsAndFood.pets.map( /* ... */ ) ) pero tendría que usar un bucle for o alguna otra técnica para analizar cada elemento en el objeto.

Un ejemplo de cómo usar la función de map para una de sus matrices:

 const agesArray = myPetsAndFood.pets.map((item) => { return item.age; });
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