Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

JavaScript Garbage Collection (การเก็บขยะหน่วยความจำ) คืออะไร?

JavaScript จัดสรรหน่วยความจำอัตโนมัติเมื่อประกาศตัวแปร Garbage Collection (GC) คือกระบวนการค้นหาหน่วยความจำที่ไม่ได้ใช้งานแล้วและปล่อยคืน

GC ใช้อัลกอริทึมหลัก 2 แบบ:

  • Mark-and-sweep algorithm: ระบุออบเจกต์ที่เข้าถึงได้ (reachable) และลบออบเจกต์ที่เข้าถึงไม่ได้ (unreachable)
  • Reference-Counting: นับจำนวนอ้างอิงไปยังออบเจกต์ ถ้าเป็น 0 จะถูกลบอัตโนมัติ (แต่มีปัญหา circular references)

ในปัจจุบันเบราว์เซอร์สมัยใหม่ใช้ Mark-and-sweep เป็นหลัก ซึ่งจัดการ circular references ได้ดีกว่า