The delete() method removes the specified element from a WeakMap object.
Syntax
wm.delete(key);
Parameters
- key
- Required. The key of the element to remove from the
WeakMapobject.
Return value
true if an element in the WeakMap object has been removed successfully. false if the key is not found in the WeakMap or if the key is not an object.
Examples
Using the delete method
var wm = new WeakMap(); wm.set(window, 'foo'); wm.delete(window); // Returns true. Successfully removed. wm.has(window); // Returns false. The window object is no longer in the WeakMap.
Specifications
| Specification | Status | Comment |
|---|---|---|
| ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'WeakMap.prototype.delete' in that specification. |
Standard | Initial definition. |
| ECMAScript Latest Draft (ECMA-262) The definition of 'WeakMap.prototype.delete' in that specification. |
Draft |
Browser compatibility
| Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|---|
| Basic support | 36 | (Yes) | 6.0 (6.0) | 11 | 23 | 7.1 |
| Feature | Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|
| Basic support | No support | (Yes) | 6.0 (6.0) | No support | No support | 8 |
Firefox-specific notes
- Prior to SpiderMonkey 38 (Firefox 38 / Thunderbird 38 / SeaMonkey 2.35), this method threw a
TypeErrorwhen thekeyparameter was not an object. This has been fixed in version 38 and later to returnfalseas per the ES2015 standard (bug 1127827).