WeakMap.prototype.has()

Baseline 已廣泛支援

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

WeakMap 例項的 has() 方法返回一個布林值,指示指定的鍵在此 WeakMap 中是否存在。

試一試

const weakmap = new WeakMap();
const object1 = {};
const object2 = {};

weakmap.set(object1, "foo");

console.log(weakmap.has(object1));
// Expected output: true

console.log(weakmap.has(object2));
// Expected output: false

語法

js
has(key)

引數

key

用於在 WeakMap 物件中測試其存在性的條目的鍵。物件的鍵是按引用比較的,而不是按值比較。

返回值

如果 WeakMap 物件中存在指定鍵的條目,則返回 true;否則返回 false。如果 key 不是物件或未註冊的 Symbol,則始終返回 false

示例

使用 has()

js
const wm = new WeakMap();
wm.set(window, "foo");

wm.has(window); // returns true
wm.has("baz"); // returns false

規範

規範
ECMAScript® 2026 語言規範
# sec-weakmap.prototype.has

瀏覽器相容性

另見