⊗jsPmMCVFEO 504 of 505 menu

Exportación de objetos en módulos mediante closures en JavaScript

Supongamos que tenemos el siguiente módulo:

;(function() { function func1() { alert('module funcion'); } function func2() { alert('module funcion'); } function func3() { alert('module funcion'); } })();

Supongamos que queremos exportar las tres funciones. En este caso, para no multiplicar nombres de funciones innecesarios fuera del módulo, es mejor guardar todas las funciones en un objeto y exportar este objeto:

;(function() { function func1() { alert('module funcion'); } function func2() { alert('module funcion'); } function func3() { alert('module funcion'); } window.module = {func1: func1, func2: func2, func3: func3}; })();

Dado que los nombres de las claves y las variables coinciden, el objeto con las funciones se puede simplificar:

;(function() { function func1() { alert('module funcion'); } function func2() { alert('module funcion'); } function func3() { alert('module funcion'); } window.module = {func1, func2, func3}; })();

También se puede seguir otro camino. Guardaremos las funciones en el objeto directamente al definirlas, de esta manera:

;(function() { let module = {}; module.func1 = function() { alert('module funcion'); } module.func2 = function() { alert('module funcion'); } module.func3 = function() { alert('module funcion'); } window.module = module; })();

Se da el siguiente módulo:

;(function() { let str1 = 'module variable'; let str2 = 'module variable'; let str3 = 'module variable'; function func1() { alert('module funcion'); } function func2() { alert('module funcion'); } function func3() { alert('module funcion'); } function func4() { alert('module funcion'); } function func5() { alert('module funcion'); } })();

Exporta un objeto con las primeras cinco funciones y las dos primeras variables.

Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar