Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

246
Views
¿Pasar una Promesa como un argumento de función se considera una mala práctica?

Muchas veces me he preguntado sobre esto, ya que puede llevar al problema obvio:

 function someFunction (a, b) { return a + b }

Si a es una promesa, primero deberá resolverla:

 async function someFunction (a, b) { a = await a return a + b }

Lo que a confusión sobre si se resuelve o no ...

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Sí, generalmente se debe evitar pasar promesas a funciones. Prefiero esperar la promesa y pasar solo el resultado, es decir, hacer

 somethingAsync().then(x => someFunction(x, y)) // or someFunction(await somethingAsync(), y)

en vez de

 someFunction(somethingAsync(), y)

Como usted dice, de lo contrario es muy confuso, especialmente cuando no usa TypeScript para decirle cuándo se ha equivocado. Y la implementación de someFunction se vuelve mucho más simple cuando es síncrona y no tiene que lidiar con ninguna lógica asíncrona, lo que también la hace más universalmente útil.

Por supuesto, hay excepciones a cada regla, y serían funciones que están explícitamente dedicadas a manejar la lógica de promesa asíncrona, como Promise.resolve , Promise.all , Promise.race , .then() , etc. A veces escribes funciones auxiliares similares usted mismo, por ejemplo, para el manejo de errores, y en esos casos podría ser aceptable pasar una promesa. Aunque todavía es inusual.

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!