A WeakSet is a special type of Set in JavaScript that stores only objects and allows them to be garbage collected automatically when no longer needed.
It is mainly used for memory-efficient data handling and private object tracking.
What is WeakSet in JavaScript?
A WeakSet:
-
Stores only objects (no strings, numbers, etc.)
-
Holds weak references to objects
-
Does not prevent garbage collection
-
Does not support size or iteration
It is useful for:
-
Tracking active objects
-
Caching objects temporarily
-
Managing memory-sensitive logic
Creating and Using WeakSet
Explanation:
-
add()→ adds an object -
has()→ checks if object exists -
delete()→ removes the object -
Only objects are allowed as values
Invalid Values in WeakSet
Only objects are allowed:
ws.add({}); // Valid
Why WeakSet Is Important
Understanding WeakSet in JavaScript helps you:
-
Handle memory efficiently
-
Track objects safely
-
Avoid memory leaks
-
Build optimized applications
-
Manage temporary object storage
WeakSet is commonly used in advanced applications and libraries.
Quick Summary
-
WeakSet stores only objects
-
Supports
add(),has(),delete() -
No
size, no looping -
Objects are garbage collected automatically
-
Useful for memory-sensitive logic
Conclusion
WeakSet in JavaScript is designed for advanced object management.
It helps build efficient, memory-safe applications by allowing objects to be tracked without blocking garbage collection.