Explorer
Node.js

Implement a `createPrivateData()` that uses WeakMap to store private data for objects.

Problem Statement

Implement a `createPrivateData()` that uses WeakMap to store private data for objects.

Complexity

Time Complexity: -

Space Complexity: -

Hints

šŸ’” Hint 1: WeakMap allows using objects as keys without preventing garbage collection. šŸ’” Hint 2: Store private data in a WeakMap keyed by the object instance. šŸ’” Hint 3: const privates = new WeakMap(); return { set(obj, key, val), get(obj, key) }; āœ… Solution: ```javascript function createPrivateData() { const privates = new WeakMap(); return { set(obj, key, val) { if (!privates.has(obj)) privates.set(obj, {}); privates.get(obj)[key] = val; }, get(obj, key) { return privates.has(obj) ? privates.get(obj)[key] : undefined; } }; } ```

WeakMap for Private Data

Medium
Implement a `createPrivateData()` that uses WeakMap to store private data for objects.
Editor
Loading Editor...
Evaluate code
Output:Click "Run" above to execute and verify your code here.
{"secret":"password123"}