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

237
Vistas
Tener un duplicado de un objeto, o como multiplicarlo

Tengo un carrito de compras con una manzana y un objeto naranja. Quiero poder agregar la manzana dos veces, pero no estoy seguro de cómo apuntar dos veces al objeto "fruta1" para mostrar 2 manzanas en el carrito. Básicamente, quiero actualizar la matriz del carrito con "2 manzanas", con el "valor" del precio duplicado y 1 naranja)

 module.exports = { shoppingCart: function () { //create empty cart array theCart = []; // all fruits let fruitProducts = [ { fruit1: 'Apple', price: 4.95, }, { fruit2: 'Orange', price: 3.99, }, ]; //push the objects into the empty array using the apply method -- add items to the cart Array.prototype.push.apply(theCart, fruitProducts); //remove items from the cart by calling this function function removeAllItems() { if ((theCart.length = !0)) { theCart = []; } } //removeAllItems(); console.log(theCart); }, };
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Parece que está preguntando cómo encontrar un objeto de una matriz y luego copiarlo.

Primero, para encontrar fruit1:

 const apple = fruitProducts.find(fruit => “fruit1” in fruit);

Luego, para enviar copias de ese objeto a su carrito, puede usar el operador de extensión para hacer una copia superficial:

 theCart.push(…apple); theCart.push(…apple);

Dicho esto, una mejor solución es mantener una lista de objetos cuyas propiedades son fruta, cantidad y precio. Luego, puede calcular el precio total una vez que haya terminado de agregar artículos al carrito.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Utilice .map() . Agregue la qty de propiedad y total y pase una extensión de números ( ...amounts ej. 1, 2, 5 ) que representan las cantidades de cada artículo.

 const fruit = [{ "fruit": "Apple", "price": 4.95 },{ "fruit": "Orange", "price": 3.99 } ]; const shop = (product, ...amounts) => { let qty = [...amounts] || []; let cart = product.map((item, count) => { item.qty = qty[count] || 0; item.total = parseFloat((item.qty * item.price).toFixed(2)); return item; }); return cart; }; console.log(shop(fruit, 1, 3)); console.log(shop(fruit, 4)); console.log(shop(fruit)); console.log(shop(fruit, 1, 3, 2));

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