<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        ES6 Map結構的應用實例分析

        來源:懂視網 責編:小采 時間:2020-11-27 21:54:30
        文檔

        ES6 Map結構的應用實例分析

        ES6 Map結構的應用實例分析:本文實例講述了ES6 Map結構的應用。分享給大家供大家參考,具體如下: Map 數據結構類似于對象,也是鍵值對的集合,但是鍵的范圍不限于字符串,各種類型的值(包括對象)都可以當作鍵。也就是說,Object 結構提供了字符串—值的對應,Map 結構提
        推薦度:
        導讀ES6 Map結構的應用實例分析:本文實例講述了ES6 Map結構的應用。分享給大家供大家參考,具體如下: Map 數據結構類似于對象,也是鍵值對的集合,但是鍵的范圍不限于字符串,各種類型的值(包括對象)都可以當作鍵。也就是說,Object 結構提供了字符串—值的對應,Map 結構提

        本文實例講述了ES6 Map結構的應用。分享給大家供大家參考,具體如下:

        Map 數據結構類似于對象,也是鍵值對的集合,但是“鍵”的范圍不限于字符串,各種類型的值(包括對象)都可以當作鍵。也就是說,Object 結構提供了“字符串—值”的對應,Map 結構提供了“任何—值”的對應,是一種更完善的 Hash 結構實現。如果你需要“鍵值對”的數據結構,Map 比 Object 更合適。

        初識map

        var obj = {
         'name':'Joh',
         qq:'5222',
         'full name':'Johnny'
        };
        let map = new Map();
        map
         .set(obj, 'Hello map')
         .set('haha', 12)
         .set(52, obj)
         .set(NaN, new Set([1,2,3]));
        console.log(map);
        console.log(map.size); // 4
        
        

        Map可以連續set,就像Set可以連續add一樣,同樣有size的api

        map 的delete, has方法

        var obj = {
         'name':'Joh',
         qq:'5222',
         'full name':'Johnny'
        };
        var arr = [1,2];
        let map = new Map();
        // map 可以連續set
        map
         .set(obj,'11')
         .set(11,3)
         .set(12,'H')
         .set(arr,'h');
        var delRes = map.delete(obj); // map不可以連續 delete
        console.log(delRes); // true
        var hasBool1 = map.has(11);
        console.log(hasBool1); // true
        var hasBool2 = map.has(arr);
        console.log(hasBool2); // true
        console.log(map.size); // 3
        
        

        NaN在map上的特殊性與clear方法

        let map = new Map();
        // map 可以連續set
        map
         .set(11,3)
         .set(12,'H')
         .set(NaN,'h1')
         .set(NaN,'h2'); // 覆蓋前值
        console.log(map.get(NaN)); // h2
        map.clear();
        console.log(map.size); // 0
        
        

        和set相同,NaN在map上具有唯一性,clear方法會將集合清空

        map 的構造函數參數的傳遞,取值get方法,keys方法,values方法

        let map = new Map([
         ['name','Joh'],
         ['age',10]
        ]);
        let name = map.get('name');
        let age = map.get('age');
        console.log(name); // Joh
        console.log(age); // 10
        let keys = map.keys();
        for(let k of keys) {
         console.log(k); // 分別
        輸出 name 和 age } let values = map.values(); for(let v of values) { console.log(v); // 分別輸出 Joh 和 10 }

        map與set的原型屬性比較和map使用entries方法獲得數據的實體

        let map = new Map([
         ['name','Joh'],
         ['age',10]
        ]);
        console.log(Set.prototype[Symbol.iterator] === Set.prototype.values); // true
        console.log(Map.prototype[Symbol.iterator] === Map.prototype.values); // false
        console.log(Map.prototype[Symbol.iterator] === Map.prototype.entries); // true
        let entries = map.entries();
        for (let en of entries) {
         console.log(en); // 分別
        輸出 ['name','Joh'] 和 ['age',10] }

        map內forEach方法和對象傳遞,以及內部this的使用

        let map = new Map([
         ['name','Joh'],
         ['age',10]
        ]);
        var me = {
         name:"Joh"
        };
        map.forEach(function (val, key) {
         console.log(key, val); // 分別
        輸出 name Joh 和 "age" 10 }); console.log('>>>>>'); map.forEach(function (val, key) { // console.log(key, val); // 分別輸出 name Joh 和 "age" 10 console.log(this); // {name: "Joh"} 此處的this就是傳遞進來的對象 }, me);

        更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《JavaScript數組操作技巧總結》、《JavaScript排序算法總結》、《JavaScript數學運算用法總結》、《JavaScript數據結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》、《JavaScript查找算法技巧總結》及《JavaScript錯誤與調試技巧總結》

        希望本文所述對大家JavaScript程序設計有所幫助。

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        ES6 Map結構的應用實例分析

        ES6 Map結構的應用實例分析:本文實例講述了ES6 Map結構的應用。分享給大家供大家參考,具體如下: Map 數據結構類似于對象,也是鍵值對的集合,但是鍵的范圍不限于字符串,各種類型的值(包括對象)都可以當作鍵。也就是說,Object 結構提供了字符串—值的對應,Map 結構提
        推薦度:
        標簽: 使用 map es
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 亚洲首页在线观看| 亚洲精品亚洲人成在线观看| 亚洲精品国产福利在线观看| a级毛片高清免费视频| 亚洲色偷偷偷鲁综合| 中文字幕a∨在线乱码免费看| 亚洲JIZZJIZZ中国少妇中文| 免费一级全黄少妇性色生活片| 亚洲成av人片天堂网老年人| 一区二区三区在线免费| 亚洲毛片网址在线观看中文字幕 | 亚洲精品动漫人成3d在线| 男男gay做爽爽免费视频| 亚洲日韩国产精品乱| 免费看少妇高潮成人片| 久久久亚洲欧洲日产国码二区| 亚洲免费在线视频观看| 亚洲欧洲国产综合AV无码久久| 国产大片免费观看中文字幕| 久久国产美女免费观看精品| 亚洲AV永久纯肉无码精品动漫| 亚洲免费在线视频观看| 国产精品亚洲小说专区| 色久悠悠婷婷综合在线亚洲| 最近中文字幕无免费| 亚洲精品无码久久久久YW| 亚洲日本韩国在线| 久久久久免费看成人影片| 77777午夜亚洲| 亚洲中文字幕无码专区| 18女人水真多免费高清毛片| 亚洲日韩中文字幕一区| 狠狠亚洲狠狠欧洲2019| 67194成手机免费观看| 精品久久久久久亚洲中文字幕| 亚洲AV综合色区无码一区爱AV| 成人激情免费视频| 免费福利电影在线观看| 亚洲av最新在线观看网址| 国产亚洲高清不卡在线观看| 免费精品人在线二线三线区别|