⊗jsPmClInr 262 of 505 menu

การปิดใน JavaScript

ตอนนี้เรามาศึกษาแนวคิดเรื่อง การปิด (closure) กัน ที่จริงแล้วคุณ คุ้นเคยกับแนวคิดนี้อยู่แล้ว สิ่งที่เหลือคือเพียง เรียนรู้คำศัพท์ที่ถูกต้อง

ดังนั้น การปิดคือฟังก์ชันที่รวมกับ ตัวแปรภายนอกทั้งหมดที่สามารถเข้าถึงได้ หรือในคำอื่น ๆ การปิดคือฟังก์ชัน ที่รวมกับสภาพแวดล้อมของศัพท์ (lexical environment) ของมัน

ใน JavaScript ส่วนใหญ่ เมื่อพูดว่า "การปิด ของฟังก์ชัน" มักไม่ได้หมายถึงตัวฟังก์ชันนั้นเอง แต่หมายถึงตัวแปรภายนอกของมัน หากฟังก์ชัน ใด ๆ ได้รับตัวแปรจากสภาพแวดล้อมของศัพท์ ของตัวเอง จะพูดว่า "ตัวแปรนั้นถูกดึงมา จากการปิด"

ลองนึกถึงโค้ดที่เราทำในบทเรียน ก่อนหน้านี้:

function test() { let num = 1; return function() { console.log(num); } } let func = test(); func(); // แสดงผล 1

ในกรณีนี้เราสามารถพูดได้ว่าฟังก์ชัน func ได้รับค่าของตัวแปร num มาจากการปิด นอกจากนี้ยังสามารถพูดได้ว่า ฟังก์ชัน func เก็บค่าของตัวแปร num ไว้ในการปิด

ไทย
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
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ