Documentación offline JavaScript main

WeakMap.prototype.set()

main Documentación oficial Licencia CC-BY-SA-2.5Descargado el 2026-08-02

En esta página

The set() method of {{jsxref("WeakMap")}} instances adds a new entry with a specified key and value to this WeakMap, or updates an existing entry if the key already exists.

{{InteractiveExample("JavaScript Demo: WeakMap.prototype.set()")}}

```js interactive-example const weakmap = new WeakMap(); const object1 = {}; const object2 = {};

weakmap.set(object1, "foo"); weakmap.set(object2, "bar");

console.log(weakmap.get(object1)); // Expected output: "foo"

console.log(weakmap.get(object2)); // Expected output: "bar"

## Syntax

```js-nolint
set(key, value)

Parameters#

  • key
  • : The key of the entry to add to or modify within the WeakMap object. Must be either an object or a non-registered symbol. Object keys are compared by reference, not by value.
  • value
  • : The value of the entry to add to or modify within the WeakMap object. Can be any value.

Return value#

The WeakMap object.

Exceptions#

Examples#

Using set()#

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

// Add new elements to the WeakMap
wm.set(obj, "foo").set(window, "bar"); // chainable

// Update an element in the WeakMap
wm.set(obj, "baz");

// Using a non-registered symbol as key
const sym = Symbol("foo");
wm.set(sym, "baz");
wm.set(Symbol.iterator, "qux");

Specifications#

{{Specifications}}

Browser compatibility#

{{Compat}}

See also#

  • {{jsxref("WeakMap")}}
  • {{jsxref("WeakMap.prototype.delete()")}}
  • {{jsxref("WeakMap.prototype.get()")}}
  • {{jsxref("WeakMap.prototype.has()")}}