Változók és függvények exportálása modulokban closure-ök segítségével JavaScriptben
Időnként szükség van arra, hogy egy modul bizonyos változói és függvényei kívülről is elérhetők legyenek. Nézzük meg, hogyan tehetjük ezt meg. Tegyük fel, hogy a következő modulunk van:
;(function() {
let str = 'modul változó';
function func() {
alert('modul függvény');
}
})();
Exportáljuk ki a func függvényünket.
Ehhez írjuk be egy property-be a böngésző beépített
window objektumába:
;(function() {
let str = 'modul változó';
function func() {
alert('modul függvény');
}
window.func = func;
})();
Most már meghívhatjuk a függvényünket kívülről a modulból:
;(function() {
let str = 'modul változó';
function func() {
alert('modul függvény');
}
window.func = func;
})();
window.func(); // kiírja 'modul függvény'
Eközben nem kötelező a függvényt
mint az window objektum property-jeként meghívni:
;(function() {
let str = 'modul változó';
function func() {
alert('modul függvény');
}
window.func = func;
})();
func(); // kiírja 'modul függvény'
Adott a következő modul:
;(function() {
let str1 = 'modul változó';
let str2 = 'modul változó';
let str3 = 'modul változó';
function func1() {
alert('modul függvény');
}
function func2() {
alert('modul függvény');
}
function func3() {
alert('modul függvény');
}
})();
Exportálj ki egy változót és bármelyik két függvényt.