JS语法学习笔记之Map对象

    xiaoxiao2022-07-07  200

    Map对象保存键值对,任何对象或者原始值都可以作为一个键或一个值。

    Map中的key

    key可以是字符串key是对象key是函数key是NaN

    Map的迭代

    var myMap = new Map(); myMap.set(0,'zero'); myMap.set(1,'one'); myMap.set(2,'two'); console.log(myMap.size);//3 for(var [key,value] of myMap){ console.log(key + "=" +value); } for(var [key,value] of myMap.entries()){ console.log(key + "=" +value); } for(var key of myMap.keys()){ console.log(key); } for(var value of myMap.values()){ console.log(value); }

    Map对象的操作

    Map与Array的转换
    var kvArray=[['key1','value1'],['key2','value2']];//一个二维键值对数组 var myMap=new Map(kvArray);//用Map构造函数将数组转换成一个Map对象 var kvArray2=Array.from(myMap);//用Array.from方法将Map对象转换成一个二维键值对数组
    Map的克隆
    var myMap1=new Map([['key1','value1'],['key2','value2']]);//一个Map对象 var myMap2=new Map(myMap1);//注意,新对象和原来对象的地址不相等
    Map的合并
    var myMap1=new Map([['key1','value1'],['key2','value2']]); var myMap2=new Map([['key1','value1'],['key3','value3'],['key4','value4']]); var myMaps=new Map([...myMap1,...myMap2]);//有重复的键值对或者键值,后面的会覆盖前面的。
    最新回复(0)