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

311
Views
¿Por qué tenemos que usar la palabra clave asíncrona y esperar a que sea sincrónica en el nodo, cuando la palabra clave es literalmente asíncrona?

Así que estaba pensando que ok node es asíncrono (lo que significa que se ejecutan varias líneas de código al mismo tiempo), entonces, ¿por qué usamos la palabra clave async (que literalmente significa asíncrono) para esperar a que se realice una tarea con la palabra clave await (que está haciendo es sincrónico). ¿Por qué no hay una sincronización de palabras clave, porque eso es lo que estamos haciendo? ¿Puede alguien explicar la lógica de la palabra clave asíncrona? Estoy muy confundido.

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

0

La palabra clave async permite el uso de await , que es solo una sintaxis más optimizada para escribir código con promesas y operaciones asincrónicas. No hace nada sincronizado. Simplemente le permite usar técnicas de programación similares a las del código síncrono, pero todo sigue siendo asíncrono.

¿Puede alguien explicar la lógica de la palabra clave asíncrona? Estoy muy confundido.

Cuando usa la palabra clave async para declarar una función, está creando un tipo diferente de función que SIEMPRE devuelve una promesa. Esto es útil solo para la programación asincrónica; por lo tanto, la afiliación de las palabras clave async con el término "asincrónico".

Además, la palabra clave async no hace que nada sea sincrónico. Le permite usar un modelo de programación más síncrono que es mucho más simple de usar, particularmente para cosas como ramas condicionales en el flujo de control asíncrono, pero nada de lo que era asíncrono en realidad se convierte en síncrono.

Como ejemplo de cómo nada se vuelve sincrónico, ejecute este ejemplo en el fragmento y observe el orden de las declaraciones de console.log() . La función async regresa cuando llega a la primera await y el resto de la ejecución continúa y la operación asíncrona continúa. Esta es una simulación con un temporizador, pero ese temporizador podría ser cualquier otra operación asíncrona, como una solicitud http, una operación de base de datos, etc.

 function delay(t) { return new Promise(resolve => { setTimeout(resolve, t); }); } async function run() { console.log("in run() 1"); await delay(100); console.log("in run() 2"); } console.log("before run()"); run(); console.log("after run()");

Al ejecutar este pequeño ejemplo, puede ver que la ejecución de la función run() se suspende tan pronto como presiona await y regresa permitiendo que se ejecute el otro código después de la llamada a la función. Luego, algún tiempo después, cuando el temporizador se dispara y la promesa de delay() se resuelve, la función run() continúa donde se suspendió y ejecuta el resto del cuerpo de la función.

Esto es operativamente lo mismo que este código usando .then() en lugar de async y await :

 function delay(t) { return new Promise(resolve => { setTimeout(resolve, t); }); } function run() { console.log("in run() 1"); delay(100).then(() => { console.log("in run() 2"); }); } console.log("before run()"); run(); console.log("after run()");

about 4 years ago · Juan Pablo Isaza Report

0

Node.js no es "asincrónico", sino que tiene un conjunto de API asincrónicas.

Para responder a su pregunta sobre async/await - async/await es solo azúcar sintáctica, ya que utiliza promesas ocultas.

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!