JavaScript'te Kapanışlar Yoluyla Modüle Parametre Aktarımı

Modülün içine bazı değerleri sabit olarak kodlamak yerine, onları modülün kendisine parametre olarak aktarmak (yani, yerinde çağrılan fonksiyonun bir parametresi olarak) iyi bir uygulamadır:

javascript;(function(arg1, arg2) { // parametreler değişkenlere dönüşür
  
})(1, 2); // bazı parametreleri aktarıyoruz

Bir örnek üzerinden görelim. Bir sayı içeren bir div ve bir butonumuz olduğunu varsayalım:

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

Ayrıca bir modülümüz olduğunu da varsayalım:

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);
  });
})();

Gördüğünüz gibi, elemanlarımızın seçicileri modülün koduna sabit olarak yazılmış. Daha iyi bir çözüm, onları modülün parametreleri olarak aktarmak olacaktır - bu sayede ileride kolayca değiştirebiliriz. Modülümüzü düzeltelim:

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

Bir buton ve içine sayılar girilen üç input verilmiştir. Butona tıklandığında, girilen sayıların toplamını konsola yazdırın. Görevi bir modül kullanarak uygulayın.