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

347
Visualizações
Recorra una matriz de objetos anidados en javascript

Tengo problemas para imprimir objetos que están dentro de una matriz. Cuando estoy iniciando sesión en la consola, esto es lo que obtengo:

 console.log(product.categories)

¿Cómo podría iterar a través de estos objetos anidados donde podría mostrarlos individualmente como

 <ul> <li>Bath</li> <li>/bath/</li> <li>18</li> <li>Shop all</li> <li>/shop-all/</li> <li>23</li> </ul>

Todo el objeto de datos de 'productos' se ve así ingrese la descripción de la imagen aquí

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

0

Puede recorrer los valores de cada objeto en la matriz, crear elementos de lista a partir de cada uno de ellos y agregarlos al elemento de lista.

 let obj = { edges: [ {name: 'Bath', path: '/bath/', entityId: 18}, {name: 'Shop App', path: '/shop-all/', entityId: 23} ] } let ul = document.createElement('ul'); for(const x of obj.edges) for(const textContent of Object.values(x)) ul.append(Object.assign(document.createElement('li'), {textContent})); document.body.append(ul);

about 4 years ago · Juan Pablo Isaza Relatório

0

2 maneras


Hay 2 soluciones que puedo pensar en este momento.

<Array>.forEach()


Esta solución es la mejor si desea registrar los elementos individuales de la matriz.
Hay una mejor manera de cambiar los elementos de la matriz, pero veamos el ejemplo.

 const arr = [{ name: "Home", path: "/home" }, { name: "Forums", path: "/forums" }]; arr.forEach((value) => { console.log(value); }); // { name: "Home", path: "/home" } // { name: "Forums", path: "/forums" } // You can map it to a new value by doing this const newArr = []; arr.forEach((value) => { newArr.push(value.name); }); console.log(newArr); // ["Home", "Forums"]

<Matriz>.mapa()


Esta es la mejor solución que usaría.
Este método cambia el valor del elemento individual a lo que devuelve en su función.

 const arr = [{ name: "Home", path: "/home" }, { name: "Forums", path: "/forums" }]; const newArr = arr.map((value) => value.name); console.log(newArr); // ["Home", "Forums"] // Notice how the value has changed


La solución

Así es como se verá la solución

 function YourComponent() { const edges = product.categories.edges; const products = edges.map((value) => [value.name, value.path, value.entityId.toString()]); return ( { products.map((data) => { return ( <li>data[0]</li> <li>data[1]</li> <li>data[2]</li> ); }); } ); };
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