02_09.Map

 <script>
    // 传统的对象,不管你使用什么方式添加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新增了一种数据结构,Map,类似与传统对象,特点是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>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容