WeakSetオブジェクトは弱保持オブジェクト(''weakly held objects'')の集合を扱うための機能を組み込んだコレクションオブジェクトです。
WeakSetオブジェクトの生成には、WeakSetコンストラクターを使います。
const WeakSet = new WeakSet()
WeakSetオブジェクトにリテラルはありません。
JavaScriptには、他にも集合をサポートするオブジェクト「Setオブジェクト」がありますが、WeakSetはWeak  held objects（弱保持オブジェクト）を格納するところが違います。
具体的には、
[https://paiza.io/projects/cH2spGLuf7UdSLUqSoGWxA?language=javascript コード例]:
const ws1 = new WeakSet() ; console.log('ws1 = new WeakSet(); ws1=', ws1)
let obj = {}, lmd = x => x * x, ary = [1,2,3]
ws1.add(obj)              ; console.log('ws1.add(obj);        ws1=', ws1)
ws1.add(lmd)              ; console.log('ws1.add(lmd);        ws1=', ws1)
ws1.add(ary)              ; console.log('ws1.add(ary);        ws1=', ws1)
console.log(`ws1.has(obj) = ${ws1.has(obj)}, ws1.has({}) = ${ws1.has({})}`)
console.log(`ws1.has(lmd) = ${ws1.has(lmd)}, ws1.has(x=>x*x) = ${ws1.has(x=>x*x)}`)
console.log(`ws1.has(ary) = ${ws1.has(ary)}, ws1.has([1,2,3]) = ${ws1.has([1,2,3])}`)
実行結果:
ws1 = new WeakSet(); ws1= WeakSet {  }
ws1.add(obj);        ws1= WeakSet {  }
ws1.add(lmd);        ws1= WeakSet {  }
ws1.add(ary);        ws1= WeakSet {  }
ws1.has(obj) = true, ws1.has({}) = false
ws1.has(lmd) = true, ws1.has(x=>x*x) = false
ws1.has(ary) = true, ws1.has([1,2,3]) = false
WeakSetの文字列化すると "WeakSet {  }" になります（内容不明）。
|url=https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet
|title=WeakSet - JavaScript // MDN
|date=2021/12/08
|accessdate=2021/12/26
。
WeakSet.length
WeakSet.name
WeakSet.prototype
[object]
WeakSetオブジェクトの要素数。