WeakSet
constructor lets you create
WeakSet
objects that store weakly held
objects
in a collection.
new WeakSet([iterable]);
WeakSet
. null is treated as undefined.
var ws = new WeakSet();
var foo = {};
var bar = {};
ws.add(foo);
ws.add(bar);
ws.has(foo); // true
ws.has(bar); // true
ws.delete(foo); // removes foo from the set
ws.has(foo); // false, foo has been removed
ws.has(bar); // true, bar is retained
注意,
foo !== bar
. While they are similar objects,
they are not
the same object
. And so they are both added to the set.
| 规范 |
|---|
|
ECMAScript (ECMA-262)
The definition of 'WeakSet constructor' in that specification. |
| Desktop | Mobile | Server | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
WeakSet()
构造函数
|
Chrome 36 | Edge 12 | Firefox 34 | IE No | Opera 23 | Safari 9 | WebView Android 37 | Chrome Android 36 | Firefox Android 34 | Opera Android 24 | Safari iOS 9 | Samsung Internet Android 3.0 | nodejs 0.12 |
new WeakSet(iterable)
|
Chrome 38 | Edge 12 | Firefox 34 | IE No | Opera 25 | Safari 9 | WebView Android 38 | Chrome Android 38 | Firefox Android 34 | Opera Android 25 | Safari iOS 9 | Samsung Internet Android 3.0 | nodejs 0.12 |
new WeakSet(null)
|
Chrome 36 | Edge 12 | Firefox 37 | IE No | Opera 23 | Safari 9 | WebView Android 37 | Chrome Android 36 | Firefox Android 37 | Opera Android 24 | Safari iOS 9 | Samsung Internet Android 3.0 | nodejs 0.12 |
完整支持
不支持
WeakSet
Function
Object
Object.prototype.__defineGetter__()
Object.prototype.__defineSetter__()
Object.prototype.__lookupGetter__()
Object.prototype.__lookupSetter__()
Object.prototype.hasOwnProperty()
Object.prototype.isPrototypeOf()
Object.prototype.propertyIsEnumerable()
Object.prototype.toLocaleString()
Object.prototype.toSource()
Object.prototype.toString()
Object.prototype.valueOf()
Object.setPrototypeOf()