⊗jsPmMCVFE 503 of 505 menu

การส่งออกตัวแปรและฟังก์ชันในโมดูลผ่านการปิด (Closures) ใน JavaScript

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

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

ให้เราส่งออกฟังก์ชัน func ของเรา ในการนี้ให้เขียนลงในคุณสมบัติของออบเจกต์ในตัว window ของเบราว์เซอร์:

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

ตอนนี้เราสามารถเรียกฟังก์ชันของเราจากภายนอกโมดูลได้:

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

ทั้งนี้ไม่จำเป็นต้องเรียกฟังก์ชันเป็นคุณสมบัติของออบเจกต์ window เสมอไป:

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

กำหนดให้มีโมดูลต่อไปนี้:

;(function() { let str1 = 'ตัวแปรของโมดูล'; let str2 = 'ตัวแปรของโมดูล'; let str3 = 'ตัวแปรของโมดูล'; function func1() { alert('ฟังก์ชันของโมดูล'); } function func2() { alert('ฟังก์ชันของโมดูล'); } function func3() { alert('ฟังก์ชันของโมดูล'); } })();

ให้ส่งออกตัวแปรหนึ่งตัวและฟังก์ชันใดก็ได้สองฟังก์ชันไปยังภายนอก

ไทย
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣTürkmenTürkçeЎзбекOʻzbekTiếng Việt
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ