A Set stores unique values (no duplicates). Use it for fast membership checks and deduplication (e.g., keep unique user IDs).
const ids = new Set<number>();
ids.add(42);
console.log(ids.has(42)); // true
Advanced answer
Deep dive
A Set is an abstract data type built around one idea: store unique values and answer membership queries quickly (have I seen X?). In many languages it is backed by a hash table, which gives average O(1) add/has/delete, but can degrade to O(n) in worst cases (poor hashing, adversarial input, very high load factor).
Use a Set when:
You need deduplication (unique IDs, unique tags, unique emails).
You need fast membership checks (feature flags, allowed roles, cache keys).
You track visited nodes/states in traversals (BFS/DFS/Dijkstra).