版权声明:未经本人同意不得私自转载 https://blog.csdn.net/qq_40190624/article/details/82868834
map:键值对与对象不同的是键和值可以是任何类型
const map1 = new Map();
//设置KEY键
const key1 = 'some string',
key2 = {},
key3 = function(){};
//为key设置value值
map1.set(key1,'value of key1');
map1.set(key2,'value of key2');
map1.set(key3,'value of key3');
//根据key获取对应的value
// console.log(map1.get(key1),map1.get(key2),map1.get(key3));//value of key1 value of key2 value of key3
//获取对对应的value数量
console.log(map1.size);//3
//for ...of 遍历Map1中的key and value
for (let [key,value] of map1){
console.log(`${key} = ${value}`);
/**打印出来的结果都为字符串
* some string = value of key1
[object Object] = value of key2
function (){} = value of key3
*/
}
//打印Key值
for(let key of map1.keys()){
console.log(key)
/**some string
{}
[Function: key3]
*/
}
// 打印值
for(let value of map1.values()){
console.log(value)
/**
* value of key1
value of key2
value of key3
*/
}
//将map1转化成正常的数组
//将map1转化成正常的数组
const keyValueArray = Array.from(map1);
console.log(keyValueArray)
将map1中的key转化为数组
//将map1中的key转化为数组
const keyArray = Array.from(map1.keys())
console.log(keyArray)
/**
* [ 'some string', {}, [Function: key3] ]
*/
将map1中的value转化为数组
//将map1中的value转化为数组
const keyArrayValue = Array.from(map1.values())
console.log(keyArrayValue)
/**
* [ 'value of key1', 'value of key2', 'value of key3' ]
*/