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

366
Views
¿Por qué en este ejemplo de mdn cada función interna toma los parámetros de la función anterior (principal) como entrada?

en este ejemplo de MDN , se intenta mostrar qué es una cadena asíncrona si usamos devoluciones de llamada asíncronas de estilo antiguo con una analogía de los pasos a seguir para comer una pizza.

 chooseToppings(function(toppings) { placeOrder(toppings, function(order) { collectOrder(order, function(pizza) { eatPizza(pizza); }, failureCallback); }, failureCallback); }, failureCallback);

¿Por qué en cada paso, el parámetro de funciones anteriores se pasó como argumento a la función interna? y ¿por qué no proporcionan ningún código dentro de cada función? ¿Es este el siguiente código mejor?

 chooseToppings(function(toppings) { //some work with toppings placeOrder(function(order) { //some work with order collectOrder(function(pizza) { eatPizza(pizza); }, failureCallback); }, failureCallback); }, failureCallback);
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Hay dos ideas principales aquí:

  • toppings no es un parámetro de chooseToppings , sino su valor de resultado. No es un valor de return , sino que se pasa de forma asíncrona a la devolución de llamada que recibe chooseToppings . Entonces, chooseToppings produce toppings , placeOrder(toppings) produce un order y collectOrder(order) produce una pizza .
  • Cada función depende del resultado de la función anterior. No se puede hacer un pedido sin conocer los ingredientes. Estas dependencias se hacen explícitas pasando por el valor en lugar de ser contextuales. Si no tuviera estas dependencias, podría simplemente llamar a todas las funciones a la vez, sin esperar resultados asincrónicos.

¿Por qué no proporcionan ningún código dentro de cada función?

Debido a que estas son solo funciones de ejemplo, su implementación no importa. Puede suponer que placeOrder hace todo el // work with toppings , sea lo que sea; la guía solo se ocupa de cómo se llaman estas funciones asincrónicas en secuencia.

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!