小編給大家分享一下ES6中WeakMap是什么,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
成都創(chuàng)新互聯(lián)專注于渾源企業(yè)網(wǎng)站建設(shè),自適應(yīng)網(wǎng)站建設(shè),成都商城網(wǎng)站開發(fā)。渾源網(wǎng)站建設(shè)公司,為渾源等地區(qū)提供建站服務(wù)。全流程按需網(wǎng)站建設(shè),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)概述WeakMap和Map使用上類似,在特性上和Set類似,和Map相比,有一下特點(diǎn)
不可枚舉
WeakMap的key只能是對(duì)象
WeakMap是弱引用,WeakMap內(nèi)的key如果沒有引用,將會(huì)被垃圾回收機(jī)制回收
初始化new WeakMap([[{},1]])添加
let weakmap=new WeakMap() weakmap.add({},"1") weakmap.add({num:1},()=>{})刪除
let obj={} let weakmap=new WeakMap() weakmap.add(obj,"1") weakmap.add({},"2") weakmap.delete(obj) //true weakmap.delete({}) //false包含
let obj={} let weakmap=new WeakMap() weakmap.add(obj,"1") weakmap.has(obj)//true weakmap.has({})//false弱引用特性
let weakmap=new WeakMap([[{},1]]) setTimeout(()=>{console.log(weakmap)},3000) // 3s后輸出一下內(nèi)容,數(shù)據(jù)消失了 WeakMap {}
看完了這篇文章,相信你對(duì)ES6中WeakMap是什么有了一定的了解,想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)網(wǎng)站制作公司行業(yè)資訊頻道,感謝各位的閱讀!