Saltar al contenido

cuaderno de campo

anotaciones

Menú
  • casa
    • dinou del carrer nou
  • cocina
    • pan
    • repostería
    • verdura
  • huerto
    • instrucciones sobre el huerto
    • plano del número 29
    • huerto del año 2025
  • humanidades
    • fonoteca
    • galería
  • juego
    • colección de roms
    • steamos en steam deck
    • lista de juego
    • dosbox
  • linux
    • bash
    • sistema operativo
    • ssh
  • web
    • apache
    • css
    • html5
    • javascript
    • mysql
    • php
Menú

javascript: callback y asincronía

Publicada el 16 de marzo de 201726 de febrero de 2021 por ernesto

es frecuente llamar una función al cabo de otra con el propósito de secuenciar (ordenar) la ejecución del código:

function a(m)
{
     var b = m + 3;
     c(m);
}
a(7);

en este caso, se pretenden ejecutar las órdenes de la función a() antes de llamar a la función c() porque, probablemente, la ejecución de la función c() dependa del resultado de la función a(). sucede, no obstante, que javascript es asincrónico: la asincronía en javascript puede provocar que la función de retorno c() se ejecute aún cuando no se ha resuelto el valor de la variable b, esto es, antes de tiempo:

function c(m)
{
     console.log(m);
}
function a(m)
{
     var b = m + 3;
     c(m);
}
a(7);

en suma: se imprimiría un siete en consola antes de que se haya resuelto el valor de b. no hay mayor problema en este ejemplo: la ejecución de c() no depende de a(). no obstante, si le pasamos la variable b como argumento a la función c:

function a(m)
{
     var b = m + 3;
     c(b);
}
a(7);

javasript no llamará a la función c() hasta que no se haya obtenido el resultado del argumento b, es decir, primero resolverá b y después llamará a c(), que devolverá, en este caso, un diez en consola.

Etiquetado como callback
  • tinymce: algunas notas sin orden

    callback tras iniciar el editor init_instance_callback: function (editor) { console.log("Tinymce está en marcha."); } la…

  • constante en heredoc

    una constante no devuelve su valor dentro de la sintaxis heredoc: define("C", "constante"); echo <<<HTML…

  • desactivación de las etags

    FileETag None <IfModule mod_headers.c> Header unset ETag </IfModule> esta es la manera de excluir el…

RSS rutas fuera

  • La Naranja Metálica #111 (10×07) 12 de junio de 2026 Belisario
  • Paradigm Brewing – Tropical Precision (2026) 11 de junio de 2026 Brett Stevens
  • Beats and yelling shorts, 11th June 26 11 de junio de 2026 Hate Meditations
  • Hexbane “Nefarious Spells” Showcases Doom-Black Hybrid 9 de junio de 2026 Brett Stevens
  • International Day of Slayer (2026) 6 de junio de 2026 Brett Stevens
  • Endless Dismal Moan Curse of Underground CDs Now Available: The Collection is Now Complete 6 de junio de 2026 hessianfirm
  • CAMINANDO ENTRE MONSTRUOS 16 (Bestiario Sonoro): Quarantamaula + ESPECIAL MOTHMAN 5 de junio de 2026 Javier Resines
  • Interview With Amorphophallus Titanum (2026) 5 de junio de 2026 Brett Stevens
  • Beats and yelling: Desecresy 2 de junio de 2026 Hate Meditations

Archivo

cuaderno de campo 2011-2026