這篇文章給大家分享的是有關(guān)ES6中WeakSet有什么用的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
在秦都等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站制作、成都做網(wǎng)站 網(wǎng)站設(shè)計制作按需求定制制作,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),營銷型網(wǎng)站建設(shè),成都外貿(mào)網(wǎng)站建設(shè),秦都網(wǎng)站建設(shè)費用合理。概述WeakSet和Set差不多,但是有一些不同:
WeakSet只能存儲對象,不能存儲任意值
WeakSet不可迭代
WeakSet是弱引用,也就是如果沒有變量引用WeakSet內(nèi)的值,很容易被回收
初始化new WeakSet([iterable]);
因為只能存儲對象,所以這里我想只能傳入類似對象數(shù)組之類的東西
對象數(shù)組
new WeakSet([{name:1},{name:2}]) //WeakSet(2){{name:1},{name:2}}添加
let weakset=new WeakSet() weakset.add({num:1}) weakset.add({num:2})判斷是否已經(jīng)有了
let data={num:1} let weakset=new WeakSet() weakset.add(data) weakset.add({num:2}) weakset.has(data) //true weakset.has({num:2}) //false刪除
let data={num:1} let weakset=new WeakSet() weakset.add(data) weakset.add({num:2}) weakset.delete(data) //true weakset.delete({num:2}) //false弱引用特性
let weakset=new WeakSet([{num:1}]) setTimeout(()=>console.log(weakset),3000) // 3s 后輸出,可以看到,數(shù)據(jù)沒了 WeakSet {}
感謝各位的閱讀!關(guān)于ES6中WeakSet有什么用就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!