Penerapan Praktis
Misalkan kita memiliki dua div dengan angka:
<div id="div1">10</div>
<div id="div2">10</div>
Mari kita buat agar saat diklik, div pertama nilainya dipangkatkan dua, dan saat div kedua diklik - dipangkatkan tiga.
Mari atur kode kita dalam bentuk dua modul:
;(function() {
let elem = document.querySelector('#div1'); // div pertama
function func(num) {
return num * num; // pangkat dua
}
elem.addEventListener('click', function() {
this.textContent = func(elem.textContent);
});
})();
;(function() {
let elem = document.querySelector('#div2'); // div kedua
function func(num) {
return num * num * num; // pangkat tiga
}
elem.addEventListener('click', function() {
this.textContent = func(elem.textContent);
});
})();
Sekarang di setiap modul kita dapat menggunakan variabel dan fungsi apa pun, tanpa takut bahwa mereka akan bertentangan dengan variabel lain dan fungsi dari skrip kita.
Misalnya, kedua elemen kita simpan dalam variabel
elem - masing-masing di dalam variabelnya sendiri
pada modulnya.
Jika tidak ada modul di sini, kita harus
memperkenalkan variabel yang berbeda untuk menyimpan
elemen-elemen kita.
Dengan modul, kita dapat dengan tenang menggunakan
variabel kita, tanpa takut bahwa
seseorang akan ingin menggunakan variabel ini juga.