Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

การปิด JavaScript เทียบกับฟังก์ชันที่ไม่ระบุตัวตน


ฟังก์ชันที่ไม่ระบุชื่อ

ไม่ระบุชื่อ ตามชื่อ อนุญาตให้สร้างฟังก์ชันโดยไม่มีตัวระบุชื่อ สามารถใช้เป็นอาร์กิวเมนต์ของฟังก์ชันอื่นๆ เรียกโดยใช้ชื่อตัวแปร:

นี่คือวิธีการใช้ฟังก์ชันที่ไม่ระบุตัวตนของ JavaScript:

var func = function() {
   alert(‘This is anonymous');
}
func();

อีกตัวอย่างหนึ่งอาจเป็นดังนี้:

setTimeout(function() {
   alert('Demo');
}, 3000);

การปิด JavaScript

ใน JavaScript ฟังก์ชันทั้งหมดทำงานเหมือนการปิด การปิดเป็นฟังก์ชัน ซึ่งใช้ขอบเขตที่มีการประกาศเมื่อเรียกใช้ ไม่ใช่ขอบเขตที่เรียกใช้

นี่คือตัวอย่าง:

<!DOCTYPE html>
<html>
   <body>
      <h2>JavaScript Closures</h2>
      <script>
         var p = 20;
         function a() {
            var p = 40;
            b(function() {
               alert(p);
            });
         }
         function b(f) {
            var p = 60;
            f();
         }
         a();
      </script>
   </body>
</html>