TGViewer
JavaScript JavaScript @javascript · 31.1K subscribers
Post #3297 2.22K
CHALLENGE


class Session {
#id;
constructor(id) {
this.#id = id;
}
getId() {
return this.#id;
}
}

const activeSessions = new WeakSet();

const s1 = new Session("alpha");
const s2 = new Session("beta");
let s3 = new Session("gamma");

activeSessions.add(s1);
activeSessions.add(s2);
activeSessions.add(s3);

console.log(activeSessions.has(s1));
console.log(activeSessions.has(s3));

activeSessions.delete(s2);
console.log(activeSessions.has(s2));

try {
activeSessions.add("invalid");
} catch (e) {
console.log(e instanceof TypeError);
}

console.log(activeSessions.has(s1));
  • ❤ 7
  • 🔥 6
More from @javascript
  1. Sep 20, 2026Post #3507
  2. Sep 20, 2026CHALLENGE 'use strict'; function getValue() { return this.value; } const obj = { value: 42…
  3. Sep 19, 2026Post #3505
  4. Sep 19, 2026CHALLENGE const a = 5 & 3; const b = 5 | 2; const c = ~5; const d = 1 << 31; const e = -1…
  5. Sep 18, 2026Post #3503
  6. Sep 18, 2026CHALLENGE let i = 0; const key = () => `k${i++}`; const obj = { [key()]: i, [key()]: i, [k…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →