WeakMap object เป็นคอลเลกชันของ key/value pairs ที่ keys ถูกอ้างอิงแบบ weak (weakly referenced) Keys ต้องเป็น objects และ values สามารถเป็นค่าใดๆ ได้
ตาม Wikipedia Weak reference คือการอ้างอิงที่ไม่ปกป้องออบเจ็กต์ที่ถูกอ้างอิงจากการถูกเก็บโดย garbage collector ไม่เหมือน strong reference ออบเจ็กต์ที่ถูกอ้างอิงเฉพาะโดย weak references — หมายถึง "ทุก chain ของ references ที่ถึงออบเจ็กต์มี weak reference อย่างน้อยหนึ่งลิงก์" — ถือว่า weakly reachable และสามารถถูกเก็บได้ทุกเมื่อ
Use cases ที่จะก่อให้เกิด memory leak แต่แก้ได้ด้วย weak maps:
เก็บข้อมูลส่วนตัวเกี่ยวกับออบเจ็กต์เฉพาะ และให้เข้าถึงได้เฉพาะคนที่มี reference ไปยัง Map
เก็บข้อมูลเกี่ยวกับ library objects โดยไม่เปลี่ยนแปลงพวกมันหรือเพิ่ม overhead
เก็บข้อมูลเกี่ยวกับชุดเล็กของ objects ที่มี objects ประเภทเดียวกันเยอะ เพื่อไม่ให้เกิดปัญหากับ hidden classes ที่ JS engines ใช้
เก็บข้อมูลเกี่ยวกับ host objects เช่น DOM nodes ในเบราว์เซอร์
เพิ่มความสามารถให้ออบเจ็กต์จากภายนอก