Ekspor Variabel dan Fungsi dalam Modul melalui Closure di JavaScript
Terkadang kita perlu membuat beberapa variabel dan fungsi dalam modul agar dapat diakses dari luar. Mari kita lihat bagaimana cara melakukannya. Misalkan kita memiliki modul berikut:
;(function() {
let str = 'variabel modul';
function func() {
alert('fungsi modul');
}
})();
Mari kita ekspor fungsi func kita.
Untuk melakukannya, kita akan menuliskannya sebagai properti
dari objek bawaan browser window:
;(function() {
let str = 'variabel modul';
function func() {
alert('fungsi modul');
}
window.func = func;
})();
Sekarang kita dapat memanggil fungsi kita dari luar modul:
;(function() {
let str = 'variabel modul';
function func() {
alert('fungsi modul');
}
window.func = func;
})();
window.func(); // akan menampilkan 'fungsi modul'
Dan tidak harus memanggil fungsi tersebut
sebagai properti objek window:
;(function() {
let str = 'variabel modul';
function func() {
alert('fungsi modul');
}
window.func = func;
})();
func(); // akan menampilkan 'fungsi modul'
Diberikan modul berikut:
;(function() {
let str1 = 'variabel modul';
let str2 = 'variabel modul';
let str3 = 'variabel modul';
function func1() {
alert('fungsi modul');
}
function func2() {
alert('fungsi modul');
}
function func3() {
alert('fungsi modul');
}
})();
Ekspor satu variabel dan dua fungsi apa saja ke luar.