lunes, 17 de junio de 2013

Funciones anonimas autoinvocadas o autoejecutables con Javascript

Javascript es un lenguaje que despierta pasiones, a veces furia por lo caotico que puede convertirse si no se tiene cuidado, sin embargo nadie puede negar que a pesar de no ser el lenguaje de programación perfecto, Javascript tiene mucho potencial y su aplicación esta casí en todo lado. (web, móvil, escritorio, servidor, y más)

Este artículo pequeño trata sobre las funciones que se llaman a si mismas, y porque son tan poderosas en aplicaciones reales.

La forma básica de una función de este tipo con javascript es de la siguiente manera:

(function(){
   //Alguna porcion de codigo
})();

Y ahí viene la pregunta, porqué usar esos parentesis () al final, la respuesta puntual es porque estos parentesis permiten la ejecución inmediata de lo que le anteceda, por ejemplo, si tuvieramos una funcion del tipo:

function saludo(){
     alert('Hola mundo');
}

Y quisieramos ejecutarla sólo tendríamos que llamarla así:

saludo();

Esos dos parentesis hacen que se llame a saludo, ese es el mismo principio. Es por ello que al poner los parentesis automaticamente se ejecutará.

Es así como que tenemos una forma de ejecutar funciones automaticamente y dependiendo del contexto, si se revisa el código de Jquery veremos que hay muchas de estas en su código, un ejemplo muy simple de entender es cuando queremos que una porción de código se ejecute automaticamente cada cierto tiempo, para lo cual podriamos tener lo siguiente:

(function hacerAlgo(){
     //Aqui va todo el codigo de la función que se va a repetir
     //
     //Esta ultima linea hace que se repita automaticamente
     setTimeout(hacerAlgo(), 10000);
})();




No hay comentarios:

Publicar un comentario