WeakSet.prototype.has()
åºçº¿
广æ³å¯ç¨
èª 2015å¹´9æ èµ·ï¼æ¤ç¹æ§å·²å¨ä¸»æµæµè§å¨ä¸å¾å°æ¯æï¼å¯å¨å¤§å¤æ°è®¾å¤åæµè§å¨çæ¬ä¸æ£å¸¸ä½¿ç¨ã
WeakSet å®ä¾ç has() æ¹æ³è¿åä¸ä¸ªå¸å°å¼ï¼æç¤ºè¯¥ WeakSet 䏿å®ç对象æ¯å¦åå¨ã
å°è¯ä¸ä¸
const weakset1 = new WeakSet();
const object1 = {};
const object2 = {};
weakset1.add(object1);
console.log(weakset1.has(object1));
// Expected output: true
console.log(weakset1.has(object2));
// Expected output: false
è¯æ³
js
has(value)
åæ°
value-
è¦æµè¯æ¯å¦å¨è¯¥
WeakSet对象ä¸åå¨çå¼ã
è¿åå¼
妿æå®çå¼åå¨äº WeakSet 对象ä¸ï¼åè¿å trueï¼å¦åè¿å falseã妿 value 䏿¯å¯¹è±¡æéå
¨å±æ³¨åç符å·ï¼åå§ç»è¿å falseã
示ä¾
>ä½¿ç¨ has() æ¹æ³
js
const ws = new WeakSet();
const obj = {};
ws.add(window);
ws.has(window); // è¿å true
ws.has(obj); // è¿å false
// åå¨éå
¨å±æ³¨åç符å·
const sym = Symbol("foo");
ws.add(sym);
ws.add(Symbol.iterator);
è§è
| è§è |
|---|
| ECMAScript® 2027 Language Specification> # sec-weakset.prototype.has> |