Título: Una función en javascript Publicado por: Ali Baba en 15 Mayo 2017, 16:48 pm Una vez vi en javascript algo así:
Código
Y hasta el día de hoy no entiendo nada. Título: Re: Una función en javascript Publicado por: #!drvy en 15 Mayo 2017, 17:01 pm Es una funcion que se ejecuta a si misma (opcionalmente, con los parámetros que le des).
Código
PD: Si te preguntas por el uso que se le pueda dar, http://stackoverflow.com/questions/17058606/why-using-self-executing-function Saludos Título: Re: Una función en javascript Publicado por: erandros en 18 Mayo 2017, 16:50 pm Hora de demistificar:
Primero, estemos de acuerdo en que en javascript, podés declarar una función sin nombre. Código Podés, si querés, asignarla a una variable e invocar esa función luego Código
Pero también, en el mundo libre de javascript, podés hacer cosas locas, como declarar una función sin nombre, e invocarla inmediatamente, esto es exactamente igual que el ejemplo anterior (sin el console.log) pero en una línea: Código
Lamentablemente, ese código no corre, por ciertas cuestions de sintaxis de javascript, para que corra tenés dos opciones: Código
Código
Ahora... Por qué querrías declarar una función y llamarla inmediatamente? Por qué no poner el código así nomás en un script de html total se va a invocar de una. Por una cuestión de prolijidad. Cuando definís una variable fuera de cualquier función, es visible globalmente. Cualquier otra parte del código puede acceder a esa variable. Y eso puede hacer que tu código sea poco robusto. Pero, oh magia, cuando ponés variables dentro de funciones, esas variables solo se pueden acceder dentro de esas funciones. Y eso nos ayuda a modularizar el código. Título: Re: Una función en javascript Publicado por: dato000 en 18 Mayo 2017, 21:20 pm Una vez vi en javascript algo así: Código
Y hasta el día de hoy no entiendo nada. Debe ser una función recursiva, son horrendas, no entiendo los que dicen que son recomendables en terminos de rendimiento, sea en el lenguaje que sea, son demoledores para comer memoria así sea solo para una simple suma o imprimir un string. No uses esa basura, ni te molestes en estudiarla, es mala praxis, y una perdida de tiempo y energia. |