Modullarda ýapyşmalar arkaly üýtgeýänleri we funksiýalary eksport etmek

Bazen modulyň käbir üýtgeýänleri we funksiýalary daşary ýurtda elýeterli bolmagyny etmek gerek. Geliň, munuň nähili edilýändigine göz aýlalyň. Bizde aşakdaky modul bolsun:

javascript;(function() {
  let str = 'modulyň üýtgeýjisi';
  
  function func() {
    alert('modulyň funksiýasy');
  }
})();

Geliň, func funksiýamyzy eksport edeliň. Bunuň üçin ony brauzer gurulmasynyň window objektiň häsiýetine ýazalyň:

javascript;(function() {
  let str = 'modulyň üýtgeýjisi';
  
  function func() {
    alert('modulyň funksiýasy');
  }
  
  window.func = func;
})();

Indi biz moduldan daşarda funksiýamyzy çagyryp bileris:

javascript;(function() {
  let str = 'modulyň üýtgeýjisi';
  
  function func() {
    alert('modulyň funksiýasy');
  }
  
  window.func = func;
})();

window.func(); // 'modulyň funksiýasy' çykarar

window objektiň häsiýeti hökmünde funksiýany çagyrmak hökmany däl:

javascript;(function() {
  let str = 'modulyň üýtgeýjisi';
  
  function func() {
    alert('modulyň funksiýasy');
  }
  
  window.func = func;
})();

func(); // 'modulyň funksiýasy' çykarar
Задание 1

Aşakdaky modul berlen:

javascript;(function() {
  let str1 = 'modulyň üýtgeýjisi';
  let str2 = 'modulyň üýtgeýjisi';
  let str3 = 'modulyň üýtgeýjisi';
  
  function func1() {
    alert('modulyň funksiýasy');
  }
  function func2() {
    alert('modulyň funksiýasy');
  }
  function func3() {
    alert('modulyň funksiýasy');
  }
})();

Daşary ýurda üýtgeýänleriň birini we iki islendik funksiýany eksport ediň.