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

137
Vistas
Problema al usar .find para manipular una matriz de objetos en javascript

He estado tratando de resolver esto por un tiempo, pero no puedo resolverlo. Recibí algunos productos de una API y después de deconstruirlos, los pasé a algunas etiquetas HTML para realizar la manipulación DOM en ellos desde JS así...

 displayProducts(products){ let result = ''; products.forEach(product => { result += ` <article class="product"> <div class="img-container"> <img src=${product.image} alt="product" class="product-img"> <button class="bag-btn" data-id= ${product.id}> <img src="./images/icons8_add_shopping_cart_100px.png" width="16px" max-width= "18px" alt="add to cart"/> Add to cart </button> </div> <div class="goodsinfo"> <span class="description"> <img src="./images/icons8_eye_100px.png" class="view" data-class=${product.id}/> </span> <span class="titleprice"> <h3>${product.title}</h3> <h4>#${product.price}</h4> </span> </div> </article> ` }); productsDOM.innerHTML = result; }

Luego comencé a manipular, pero me encontré con un problema al usar el método de matriz .find para hacer coincidir una identificación con la identificación de la matriz de objetos a pesar de que son exactamente iguales.

 compileDescription(products){ console.log(products) // this works fine and displays 16 products which are 16 objects in arrays. const eyeView = [...document.querySelectorAll('.view')]; eyeView.forEach(viewBtn=>{ viewBtn.addEventListener('click', (event)=>{ const btnId = event.target.dataset.class console.log(btnId); //this works and shows the ID of the clicked button const productFind = products.find(product=> product.id === btnId) console.log(productFind); //returns undefined }) }) }

Lo que quiero es que cuando se haga clic en un botón con una identificación particular, la identificación coincida con una identificación de un objeto en la matriz de objetos y el objeto se me devuelva para su manipulación. Por favor, ayúdenme chicos. Gracias de antemano.

about 4 years ago · Juan Pablo Isaza
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