尝试一下
const weakmap1 = new WeakMap();
const object1 = {};
const object2 = {};
weakmap1.set(object1, "foo");
weakmap1.set(object2, "bar");
console.log(weakmap1.get(object1));
// Expected output: "foo"
console.log(weakmap1.get(object2));
// Expected output: "bar"
语法
js
set(key, value)
参数
返回值
该 WeakMap 对象
异常
示例
>使用 set() 方法
js
const wm = new WeakMap();
const obj = {};
// 将新元素添加到 WeakMap
wm.set(obj, "foo").set(window, "bar"); // 链式调用
// 更新 WeakMap 中的元素
wm.set(obj, "baz");
// 使用非全局注册的符号作为键
const sym = Symbol("foo");
wm.set(sym, "baz");
wm.set(Symbol.iterator, "qux");
规范
| 规范 |
|---|
| ECMAScript® 2027 Language Specification> # sec-weakmap.prototype.set> |