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

357
Vistas
Prueba de broma, ¿mantiene el retorno indefinido?

Estoy tratando de probar una función con broma, y simplemente puedo averiguar qué está mal. Sigue diciendo que espera devolver la salida, pero no está definido. Probé la función en otro lugar donde parece devolver la matriz correcta.

Llamo a mi función y le paso un Objeto, luego se supone que debe devolver una matriz. Luego llamo a .toEqual(output) que es una matriz.

 //This is my function const allAddresses = [ ]; const updateAllAddresses = (obj) => { const transferAmount = obj.transferAmount; const to = obj.to; const transferAddress = obj.address; const newBalance = obj.newBalance; const addressArr = [...allAddresses]; console.log("This addressArr", addressArr); console.log("this is obj", obj); //To set your account to the new balance after transfer and //to check if the address you transfer to is your own account addressArr.map((address) => { if (address.account === transferAddress) { console.log("This is inside the map !!!!"); address.balance = Number(newBalance); } if (address.account === to) { console.log("2"); address.balance = Number(transferAmount) + Number(address.balance); } console.log("last part of the testing", addressArr); return addressArr; }); }; const obj = { }; const output = [ ]; //This is my test describe("Update array", () => { test("update the array with the new information", () => { expect(updateAllAddresses(obj)).toEqual(output); }); });
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Hay un problema con su método updateAllAddresses . No está devolviendo nada, entonces el resultado de su función se vuelve undefined ;

agregue return a donde está usando el método .map.

 return addressArr.map((address) => { if (address.account === transferAddress) { console.log("This is inside the map !!!!"); address.balance = Number(newBalance); } if (address.account === to) { console.log("2"); address.balance = Number(transferAmount) + Number(address.balance); } console.log("last part of the testing", addressArr); return address; });
about 4 years ago · Juan Pablo Isaza Denunciar

0

No puede cortocircuitarse y regresar dentro de una función de map . Debes devolver el objeto después del map .

Además, cuando cambias address dentro del map ; Realmente no cambia nada, ya que esa variable de address se eliminará de la memoria en la próxima iteración

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