Pro-tip: closures มีอยู่ (ยังไม่ลงลึก)

รู้ไว้ก่อนพอ

ฟังก์ชันที่อยู่ข้างในสามารถ “จำ” ตัวแปรจากฟังก์ชันด้านนอกได้ — พฤติกรรมนี้เกี่ยวข้องกับสิ่งที่เรียกว่า closure

function makeCounter() {
  let n = 0;
  return function () {
    n = n + 1;
    return n;
  };
}

// ดูเป็นความรู้เพิ่ม — ยังไม่ต้องใช้เป็นหลักในบทนี้
ใน foundation นี้ จำแค่ประโยคเดียวพอ: ฟังก์ชันซ้อนอาจเห็นตัวแปรข้างนอกได้ — รายละเอียดและแบบฝึกลึกไว้เรียนทีหลัง