Exportieren von Variablen und Funktionen in Modulen über Closures in JavaScript
Manchmal ist es notwendig, dass einige Variablen und Funktionen des Moduls von außen zugänglich sind. Schauen wir uns an, wie das gemacht wird. Nehmen wir an, wir haben das folgende Modul:
;(function() {
let str = 'переменная модуля';
function func() {
alert('функция модуля');
}
})();
Lassen Sie uns unsere Funktion func exportieren.
Dazu weisen wir sie einer Eigenschaft des eingebauten
Browser-Objekts window zu:
;(function() {
let str = 'переменная модуля';
function func() {
alert('функция модуля');
}
window.func = func;
})();
Jetzt können wir unsere Funktion von außerhalb des Moduls aufrufen:
;(function() {
let str = 'переменная модуля';
function func() {
alert('функция модуля');
}
window.func = func;
})();
window.func(); // gibt 'функция модуля' aus
Dabei ist es nicht zwingend erforderlich, die Funktion
als Eigenschaft des Objekts window aufzurufen:
;(function() {
let str = 'переменная модуля';
function func() {
alert('функция модуля');
}
window.func = func;
})();
func(); // gibt 'функция модуля' aus
Gegeben ist das folgende Modul:
;(function() {
let str1 = 'переменная модуля';
let str2 = 'переменная модуля';
let str3 = 'переменная модуля';
function func1() {
alert('функция модуля');
}
function func2() {
alert('функция модуля');
}
function func3() {
alert('функция модуля');
}
})();
Exportieren Sie eine der Variablen und zwei beliebige Funktionen nach außen.