07 mayo, 2008

Tres formas de crear una función anónima con Javascript

Me ha gustado la solución final en hedgerwow.com, así que copio aquí las distintas opciones:

El primer intento da un error ya que se espera un nombre de función:

function(){ alert(1); }();


Forma 1 : Literal de función. Introduciendo la definición de la función entre paréntesis, sí se permite crearla como un objeto antes de ejecutarla con ():
(function(){ alert(1); } ) ( );


Forma 2 : Expresión previa. Usar paréntesis para forzar que una función declarada se ejecute ya que Javascript evalua las expresiones desde los paréntesis más internos a los más externos.
( function(){ alert(2); } ( ) );


Forma 3 : Operador Void. Aquí la genialidad, usar void para evaluar un operando solitario sin necesidad de introducir la definición entre paréntesis. Simple y sencillo:
void function(){ alert(3); }()

Publicar un comentario en la entrada

Últimos links en indiza.com