⊗jsPmMCVFE 503 of 505 menu

Exportación de variables y funciones en módulos mediante closures en JavaScript

A veces es necesario que algunas variables y funciones del módulo estén disponibles desde el exterior. Veamos cómo se hace esto. Supongamos que tenemos el siguiente módulo:

;(function() { let str = 'variable del módulo'; function func() { alert('función del módulo'); } })();

Exportemos nuestra función func. Para ello, la asignaremos como propiedad del objeto global window en el navegador:

;(function() { let str = 'variable del módulo'; function func() { alert('función del módulo'); } window.func = func; })();

Ahora podemos llamar a nuestra función desde fuera del módulo:

;(function() { let str = 'variable del módulo'; function func() { alert('función del módulo'); } window.func = func; })(); window.func(); // mostrará 'función del módulo'

Y no es necesario invocar la función como una propiedad del objeto window:

;(function() { let str = 'variable del módulo'; function func() { alert('función del módulo'); } window.func = func; })(); func(); // mostrará 'función del módulo'

Se da el siguiente módulo:

;(function() { let str1 = 'variable del módulo'; let str2 = 'variable del módulo'; let str3 = 'variable del módulo'; function func1() { alert('función del módulo'); } function func2() { alert('función del módulo'); } function func3() { alert('función del módulo'); } })();

Exporta una de las variables y dos funciones cualesquiera.

idbyenfrsv