¿Alguna vez hay una razón para usar una denominada función de invocación automática?Función de auto invocación con nombre
Por ejemplo:
(function foo()
{
alert('Hello World! Named Self Invoking Function Here');
})();
En lo que a mi aprendizaje me ha llevado, esto actúa igual que una función de auto invocación anónima, sin ventajas adicionales (no se puede llamar de nuevo después de la invocación) , y sin inconvenientes adicionales, ya que no "contamina" el alcance global (creo).
¿Hay algún momento en que tendría sentido nombrar una función de invocación automática como la anterior?
Es una expresión de función nombrada, por lo que se aplican los motivos para usar expresiones de funciones con nombre. –
El ejemplo canónico es recursividad: '(función fib (n) {return n <= 2? N-1: fib (n-1) + fib (n-2);}) (7)' – davin
Tal vez porque el código adentro hace uso del nombre de la función? – MaxArt