โมดูลผ่านการปิดใน JavaScript

ปัญหาที่อธิบายไว้ข้างต้นเป็นลักษณะทั่วไปของภาษาโปรแกรมเมอร์ใดๆ ในการแก้ปัญหา ใช้สิ่งที่เรียกว่า โมดูล

โมดูลเป็นโครงสร้างบางอย่างที่สร้างขึ้นเพื่อให้ตัวแปรและฟังก์ชันของโครงสร้างนี้มองเห็นได้เฉพาะภายในและไม่รบกวนอะไรจากภายนอก

ใน JavaScript มีโมดูลหลายประเภท โมดูลที่ง่ายที่สุด โมดูลผ่านการปิด ถูกสร้างขึ้นโดยใช้การเรียกฟังก์ชันทันที แบบนี้:

javascript;(function() {
  // รหัสโมดูลอยู่ที่นี่
})();

ตัวแปรและฟังก์ชันที่สร้างขึ้นในโมดูลดังกล่าวจะไม่สามารถมองเห็นจากภายนอกโมดูลได้:

javascript;(function() {
  let str = 'ตัวแปรของโมดูล';
  
  function func() {
    alert('ฟังก์ชันของโมดูล');
  }
})();

// ตัวแปรและฟังก์ชันของโมดูลไม่สามารถเข้าถึงได้ที่นี่:
alert(str);
alert(func);