cuaderno de campo

anotaciones

Menú
  • casa
    • cocina
      • pan
      • verdura
    • dinou del carrer nou
    • nadal : una carta
    • plano
  • huerto
    • instrucciones sobre el huerto
    • huerto del año 2022
  • humanidades
    • fonoteca
      • Noches en Poderna
      • El canto de las aves
    • galería
    • mala lluna
    • rutas fuera
    • umbrario
    • El misterio de Sant Mena
  • jardín
    • instrucciones sobre el jardín
    • exterior
    • interior
    • viveros
  • juego
    • listado de juegos
  • linux
    • bash
    • sistema operativo
    • ssh
  • web
    • apache
    • css
    • html5
    • javascript
    • mysql
    • php
Menú

javascript: callback y asincronía

Publicado 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

  • Rotheads – Slither in Slime (2022) 3 de julio de 2022 Brett Stevens
  • Disma – Earthendium (2022) 3 de julio de 2022 Brett Stevens
  • Massacre – Mythos (2022) 3 de julio de 2022 Brett Stevens
  • Beats and yelling from: Saor, Light Dweller, Solipsism 2 de julio de 2022 Hate Meditations
  • Sadistic Metal Reviews: Metal as a Service (Mucho, Mucho MaaS) 1 de julio de 2022 Brett Stevens
  • “Círculo de Buscadores” en programas literarios 30 de junio de 2022 Javier Resines
  • Undercroft – Twisted Souls (1995) 30 de junio de 2022 hessianfirm
  • Metal as deathcult theme park 27 de junio de 2022 Hate Meditations
  • Blasphematory – The Lower Catacombs (2022) 24 de junio de 2022 Belisario

Categorías

apache bash casa cocina corral css exterior fonoteca galería html5 huerto humanidades humanidades digitales interior jardín javascript juego linux mysql pan php repostería sistema operativo ssh verdura web

Archivo

cuaderno de campo 2011-2022