02_09.Map

 <script>
    // 傳統(tǒng)的對象,不管你使用什么方式添加key,最終都會轉為字符串
    // let a = {};
    // let obj = { 
    //     document: 100,
    //     [a]: 200
    // };
    // console.log(obj);  // { document: 100, [object Object]: 200 }
    
    // // 測試key是不是字符串
    // for(let key in obj) {
    //     console.log(typeof key);  // string, string
    // }


    // es6新增了一種數(shù)據(jù)結構,Map,類似與傳統(tǒng)對象,特點是key可以是任意東西
    let map = new Map([
        [1, 100],
        ['abc', 200],
        [Date, 300],
        [{}, 400]
    ]);
    console.log(map);
    console.log(map.size);  // 4

    // get方法獲取值
    console.log(map.get(Date)); // 300
    console.log(map.get({}));   // undefined,因為傳入的{}是新的
   
    // set方法設置值
    let obj = {};
    map.set(obj, 500);
    console.log(map.get(obj));  // 500,因為傳入的obj是同一個
    </script>
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容