Kalimi i parametrave në modul përmes mbylljeve në JavaScript

Është praktikë e mirë të mos futen disa vlera në modul, por t'i kaloni ato si parametër të modulit vetë (d.m.th., si parametër i funksionit që thirret në vend):

javascript;(function(arg1, arg2) { // parametrat hyjnë në variabla
  
})(1, 2); // kalojmë disa parametra

Le ta shohim me një shembull. Le të themi se kemi një div me një numër dhe një buton:

html<div id="div">3</div>
<button id="btn">click me</button>

Le të themi gjithashtu se kemi një modul të caktuar:

javascript;(function() {
  let div = document.querySelector('#div');
  let btn = document.querySelector('#btn');
  
  function func(num) {
    return num * num;
  }
  
  btn.addEventListener('click', function() {
    div.textContent = func(div.textContent);
  });
})();

Siç e shihni, përzgjedhësit e elementeve tanë janë të fiksuar në mënyrë të ngurtë në kodin e modulit. Një zgjidhje më e mirë do të ishte t'u kalonim ato si parametra të modulit - kështu në të ardhmen mund t'i ndryshonim lehtësisht. Le të korrigjojmë modulin tonë:

javascript;(function(selector1, selector2) {
  let div = document.querySelector(selector1);
  let btn = document.querySelector(selector2);
  
  function func(num) {
    return num * num;
  }
  
  btn.addEventListener('click', function() {
    div.textContent = func(div.textContent);
  });
})('#div', '#btn');
Задание 1

Jepet një buton dhe tre inpute, në të cilat futen numra. Duke klikuar në butonin, shfaqni në konsol shumën e numrave të futur. Zbatoni detyrën duke përdorur një modul.