初探 WeakSet
前言
在先前的 初探 WeakMap 學習 WeakMap ,這次學習 WeakSet ,在此把學習的過程做個紀錄。
內容
範例如下
let set = new WeakSet(); let obj1 = {}; let obj2 = {}; let obj3 = {}; // set.add( obj1 ); set.add( obj2 ); // console.log( set.has( obj1 ) );//true console.log( set.has( obj3 ) );//false // set.delete( obj1 ); console.log( set.has( obj1 ) );//false
WeakSet 與 WeakMap 相似,功能是存放 Object 的 Set 。範例透過 WeakSet.add() 來新增,用WeakSet.has() 確認存在,如果要消除可以透過 WeakSet.delete(),用起來其實跟 Set 沒什麼兩樣,不過 WeakSet 不用像 WeakMap 擔心內容從外部移除,因為 WeakSet 只有 key ,而沒有 value。
參考資料
[ developer.mozilla.org ] WeakSet
沒有留言:
張貼留言