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

293
Vistas
Tiene problemas para acceder a la información requerida a través de javascript de objeto de matriz

Imagen de lo que quiero acceder

Una imagen más detallada

Estoy tratando de acceder a la plataforma. nombre para todas las plataformas principales, sin embargo, recibo un montón de comas a cambio. Estoy bastante seguro de que se supone que debo usar la función .map para iterar a través de todas las plataformas.nombre en parent_platform. Básicamente, mi resultado deseado serían los nombres de todas las plataformas como esta PC, PlayStation, Xbox. Aquí está mi código actual hasta ahora. Gracias

 function showGames(game) { game.forEach(game => { console.log(game); const card = document.createElement('div'); card.classList.add('card'); card.innerHTML = ` <div class="card-top"> <img src="${game.background_image}" alt="" class="card-image"> </div> <div class="card-bottom"> <h1>${game.name}</h1> <h3>Release date: ${game.released}</h3> <p>Platforms: ${game.parent_platforms.map(platform => platform.name)}</p> <p>Rating: ${game.rating}</p> </div> `; main.appendChild(card); }) }
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Si esto es lo que hay que mapear...

 [{"platform":{"id":1,"name":"PC","slug":"pc"}},{"platform":{"id":2,"name":"PlayStation","slug":"playstation"}},{"platform":{"id":3,"name":"Xbox","slug":"xbox"}}]

y este es el código de mapeo...

 game.parent_platforms.map(platform => platform.name)

Sin duda obtendrá una serie de valores nulos. Hay otro nivel de anidamiento de objetos allí, como sigue...

 game.parent_platforms.map(platform => platform.platform.name) // ^^^^^^^^
about 4 years ago · Juan Pablo Isaza Denunciar

0

Su uso del mapa le dará una matriz de los nombres de la plataforma, pero luego obtendrá una representación de matriz estándar (conversión a cadena) que es poco probable que sea lo que realmente desea en la representación HTML.

Es posible que desee intentar usar Array.join, así:

 ${game.parent_platforms.map(platform => platform.name).join()}

Esto insertará una cadena con formato como "PC, PlayStation, Xbox" en la salida HTML. Si desea un separador diferente, agréguelo como argumento para unirse, así:

 ${game.parent_platforms.map(platform => platform.name).join(', ')}

La estructura del resto del código es problemática, como han señalado otros comentaristas, pero esto responde a su pregunta sobre el uso del mapa.

Como menciona @danh, también falta un nivel de desreferenciación (cambio el nombre del elemento parent_platforms para que quede claro):

 ${game.parent_platforms.map(element => element.platform.name).join()}
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