Matumizi ya Vitendo
Wacha tuwe na divi mbili zilizo na nambari:
<div id="div1">10</div>
<div id="div2">10</div>
Wacha tufanye ili kwa kubofya divi ya kwanza thamani yake iinuliwe kwa mraba, na kwa kubofya divi ya pili - iinuliwe kwa mchemraba.
Wacha tutayarishe msimbo wetu kwa njia ya moduli mbili:
;(function() {
let elem = document.querySelector('#div1'); // divi ya kwanza
function func(num) {
return num * num; // inua kwa mraba
}
elem.addEventListener('click', function() {
this.textContent = func(elem.textContent);
});
})();
;(function() {
let elem = document.querySelector('#div2'); // divi ya pili
function func(num) {
return num * num * num; // inua kwa mchemraba
}
elem.addEventListener('click', function() {
this.textContent = func(elem.textContent);
});
})();
Sasa katika kila moduli tunaweza kutumia anuwai na vitendo vyovyote, bila kuhofia kuwa zitagongana na anuwai na vitendo vingine vya msimbo wetu.
Kwa mfano, vipengele vyote viwili tunavihifadhi kwenye anuwai
elem - kila kimoja kwenye anuwai yake ya moduli yake.
Kama moduli hazingalikuwapo hapa, ingelibidi
kutambulisha anuwai tofauti za kuhifadhi
vipengele vyetu.
Lakini kwa moduli tunaweza kutumia kwa uhakika
anuwai yetu, bila kuhofia kuwa
mtu mwingine atataka pia kutumia anuwai hii.