WeakMap.prototype.set()

El método set() añade un nuevo elemento con su key y value específicos al objeto WeakMap.

Sintaxis

wm.set(key, value);

Parámetros

indentificador (key)
Requerido. El identificador (objeto) del elemento a añadir al objeto WeakMap.
valor (value)
Requerido. El valor del elemento a añadir al objeto WeakMap.

Valor devuelto

El objeto WeakMap.

Ejemplos

Utilización del método set 

var wm = new WeakMap();
var obj = {};

// Agregando nuevos elementos a WeakMap
wm.set(obj, 'foo').set(window, 'bar'); // encadenamiento
// Actualiza el un elemento en el objeto WeakMap 
wm.set(obj, 'baz');

Especificaciones

Especificación Estado Comentarios
ECMAScript 2015 (6th Edition, ECMA-262)
La definición de 'WeakMap.prototype.set' en esta especificación.
Standard Definición inicial.
ECMAScript Latest Draft (ECMA-262)
La definición de 'WeakMap.prototype.set' en esta especificación.
Draft  

Compatibilidad con navegadores

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome para AndroidFirefox para AndroidOpera para AndroidSafari en iOSSamsung InternetNode.js
setChrome Soporte completo 36Edge Soporte completo 12Firefox Soporte completo 6
Notas
Soporte completo 6
Notas
Notas Prior to Firefox 38, this method threw a TypeError when the key parameter was not an object. This has been fixed in version 38 and later to return false as per the ES2015 standard.
IE Soporte parcial 11
Notas
Soporte parcial 11
Notas
Notas Returns 'undefined' instead of the 'Map' object.
Opera Soporte completo 23Safari Soporte completo 8WebView Android Soporte completo 37Chrome Android Soporte completo 36Firefox Android Soporte completo 6
Notas
Soporte completo 6
Notas
Notas Prior to Firefox 38, this method threw a TypeError when the key parameter was not an object. This has been fixed in version 38 and later to return false as per the ES2015 standard.
Opera Android Soporte completo 24Safari iOS Soporte completo 8Samsung Internet Android Soporte completo 3.0nodejs Soporte completo 0.12
Soporte completo 0.12
Soporte completo 0.10
Deshabilitado
Deshabilitado From version 0.10: this feature is behind the --harmony runtime flag.

Leyenda

Soporte completo  
Soporte completo
Soporte parcial  
Soporte parcial
Ver notas de implementación.
Ver notas de implementación.
El usuario debe de habilitar explícitamente esta característica.
El usuario debe de habilitar explícitamente esta característica.

Notas específicas de Firefox

  • Antes de Firefox 33 (Firefox 33 / Thunderbird 33 / SeaMonkey 2.30), WeakMap.prototype.set devolvía  undefined y no permitía el encadenamiento. Esto ha sido corregido (error 1031632). Este comportamiento puede encontrarse también en Chrome/v8 (fallo).

Vea también