console.log(WeakSet.prototype.constructor);
// 出力:function WeakSet() { [native code] }
console.log(WeakSet.prototype);
// 出力:
// WeakSet
// add:function add()
// constructor:function WeakSet()
// delete:function delete()
// has:function has()
// Symbol(Symbol.toStringTag):"WeakSet"
// __proto__:Object
var weakSet1 = new WeakSet();
console.log(weakSet1[Symbol.toStringTag]);
// 出力:WeakSet
console.log(weakSet1.constructor);
// 出力:function WeakSet() { [native code] }
var obj1 = new Object("obj1");
var obj2 = new Object("obj2");
weakSet1.add(obj1);
weakSet1.add(obj2);
weakSet1.delete(obj2);
console.log(weakSet1.has(obj1)); // 出力:true
console.log(weakSet1.has(obj2)); // 出力:false