成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

WeakMap WeakSet

glumes / 2287人閱讀

WeakMap WeakSet

特性:

WeakMap對key的引用和WeakSet的成員 是弱引用

WeakMap對key的引用和WeakSet的成員 只能是對象

無法遍歷

優(yōu)點:

不易造成內(nèi)存泄漏

弱引用

引用了對象,但是不影響它的垃圾回收

不會因為該(弱)引用而改變原本的垃圾回收機制,在(弱)引用前應(yīng)該進垃圾場的,(弱)引用后還是得進垃圾場,不受到(弱)引用的任何影響。
var obj = {};
var wm = new WeakMap();
// 弱引用
wm.set(obj, 1);
console.log(wm.get(obj));    // 1

// obj為null,將會給垃圾回收機制回收。
obj = null;
console.log(wm.get(obj));    // undefined
Set Map WeakSet WeakMap區(qū)別 Set

成員唯一、無序且不重復(fù)

[value, value],鍵值與鍵名是一致的(或者說只有鍵值,沒有鍵名)

可以遍歷,方法有:add、delete、has

WeakSet

成員都是對象

成員都是弱引用,可以被垃圾回收機制回收,可以用來保存DOM節(jié)點,不容易造成內(nèi)存泄漏

不能遍歷,方法有add、delete、has

Map

本質(zhì)上是鍵值對的集合,類似集合

可以遍歷,方法很多可以跟各種數(shù)據(jù)格式轉(zhuǎn)換

WeakMap

只接受對象作為鍵名(null除外),不接受其他類型的值作為鍵名

鍵名是弱引用,鍵值可以是任意的,鍵名所指向的對象可以被垃圾回收,此時鍵名是無效的

不能遍歷,方法有g(shù)et、set、has、delete

具體用法與更詳細(xì)解釋

ES2015 WeakMap的學(xué)習(xí)和使用 - 知乎

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/106597.html

相關(guān)文章

  • 細(xì)說es6中的Set和Map

    摘要:返回一個布爾值,表示該值是否為的成員。返回鍵名的遍歷器返回鍵值的遍歷器返回鍵值對的遍歷器使用回調(diào)函數(shù)遍歷每個成員需要特別指出的是,的遍歷順序就是插入順序。該數(shù)組的所有成員,都會自動成為實例對象的成員。這意味著,數(shù)組的成員只能是對象。 1.Set ES6 提供了新的數(shù)據(jù)結(jié)構(gòu) Set。它類似于數(shù)組,但是成員的值都是唯一的,沒有重復(fù)的值。Set 本身是一個構(gòu)造函數(shù),用來生成 Set 數(shù)據(jù)結(jié)構(gòu)...

    Ryan_Li 評論0 收藏0
  • 【ES6腳丫系列】Set+WeakSet+Map+WeakMap

    摘要:返回一個布爾值,表示該值是否為的成員。清除所有成員,沒有返回值。返回的都是遍歷器對象。結(jié)構(gòu)的實例的方法,用于對每個成員執(zhí)行某種操作,沒有返回值。這個特點意味著,無法引用的成員,因此是不可遍歷的。數(shù)組成員是一個或多個表示鍵值對的一維數(shù)組。 本文字?jǐn)?shù):4700+,閱讀時間約10分鐘。 如果有理解不到位的地方,歡迎大家糾錯。 一、Set 【01】Set是一種數(shù)據(jù)結(jié)構(gòu)。類似于數(shù)組,但是成員的值...

    lyning 評論0 收藏0
  • ES6新增Set、Map數(shù)據(jù)結(jié)構(gòu)

    摘要:數(shù)據(jù)類型基本用法提供了一種類似于數(shù)組的新的數(shù)據(jù)結(jié)構(gòu)。實例屬性和方法本身是一個構(gòu)造函數(shù),用來生成數(shù)據(jù)結(jié)構(gòu)。返回一個布爾值,表示該值是否為的成員。任何具有接口且每個成員都是一個雙元素的數(shù)組的數(shù)據(jù)結(jié)構(gòu)都可以當(dāng)作構(gòu)造函數(shù)的參數(shù)。 Set數(shù)據(jù)類型 基本用法 ES6 提供了一種類似于數(shù)組的新的數(shù)據(jù)結(jié)構(gòu) Set。它的成員的值都是唯一的,沒有重復(fù)的值。 const s = new Set(); [2...

    lentoo 評論0 收藏0
  • 【ES6入門09】:Set和Map數(shù)據(jù)結(jié)構(gòu)

    摘要:類似于與的區(qū)別和的對比與對比數(shù)據(jù)結(jié)構(gòu)橫向?qū)Ρ?,增查改刪增查改刪與對比增查改刪與對比增查改刪建議優(yōu)先使用,不使用,特別是復(fù)雜的數(shù)據(jù)結(jié)構(gòu)考慮數(shù)據(jù)唯一性,使用,放棄和 Set 1.add()方法和size屬性 { let list = new Set(); // add()方法向Set數(shù)據(jù)添加元素 list.add(5); list.add(7); /...

    Codeing_ls 評論0 收藏0
  • ECMAScript6(11):Set 與 Map

    摘要:的默認(rèn)遍歷器是另外這里需要格外強調(diào)的是中的方法是判斷鍵值是否存在的,如中的方法是判斷鍵名是否存在的,如解構(gòu)轉(zhuǎn)換技巧轉(zhuǎn)轉(zhuǎn)為防止不必要的錯誤,直接丟棄不是字符串為鍵的屬性轉(zhuǎn)和類似,不過它只接受對象作為鍵名,除外。 Set Set 是一種集合結(jié)構(gòu),特征和數(shù)學(xué)中的一致,具有以下特征: 同一個集合中不能有相同元素 set 可以存放不同類型的數(shù)據(jù) 但使用過程中請注意以下幾點: 存入 set ...

    BothEyes1993 評論0 收藏0

發(fā)表評論

0條評論

glumes

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<