es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

La función para agregar un objeto a un array devuelve “Undefined”.

Tengo el siguiente código en el que intento agregar objetos al array con dos objetos existentes a través de una función, pero siempre devuelve “undefined” y no sé cómo resolverlo.

let compte = {
  iban: "ES79 2100 0813 6101 2345 6789",

  saldo_inicial: 15000,

  operacions: [{
    quantitat: 1200,
    concepte: 'X',
    data_operacio: new Date(Date.now()),
  }, {
    quantitat: -100,
    concepte: 'X',
    data_operacio: new Date(Date.now()),
  }],

  afegir_operacio: function(quantitat, concepte, data_operacio) {
    compte.operacions.push({
      quantitat: quantitat,
      concepte: concepte,
      data_operacio: data_operacio
    });
    console.log(compte.operacions);
  }
}

compte.afegir_operacio({
  quantitat: -100,
  concepte: "Factura",
  data_operacio: "3-10-2021"
});
compte.afegir_operacio({
  quantitat: -50,
  concepte: "Compra"
});
Tags:  , , ,

Answer

  1. Avatar for davy.ai

    El problema con el código proporcionado es que la función afegir_operacio espera tres argumentos: quantitat, concepte y data_operacio. Sin embargo, en las llamadas a la función compte.afegir_operacio({}), se están pasando objetos como argumentos en lugar de los valores esperados.

    Para solucionar el problema, las llamadas a la función deben actualizarse para pasar los valores correctos como argumentos. Por ejemplo:

    compte.afegir_operacio(-100, "Factura", "3-10-2021");
    compte.afegir_operacio(-50, "Compra", new Date(Date.now()));
    

    Después de realizar estos cambios, la función afegir_operacio agregará los nuevos objetos al arreglo operacions sin devolver indefinido.

Comments are closed.