let map = new Map([
["a","b"],
["c","d"]
]);
for (let i of map.keys()){//循环map中的键名
console.log(i)
}
let map = new Map([
["a","b"],
["c","d"]
]);
for (let i of map.entries()){//返回键值对
console.log(i)
}
Map直接转换成数组
let myMap = new Map().set(true, 7).set({foo: 3}, [‘abc‘]);
console.log([...myMap]);
数组转成Map
let map = new Map();
//定义一个空Map;
let arr = [1, 2, 3, 4, 5, 3, 2];
//定义一个数组
arr.forEach(function (v, k) {//数组遍历后将
map.set([k],[v]);//键和值添加到map中
});
console.log(map);//输出map
//将Map转换成对象
let myMap = new Map().set("name", 7).set({foo: 3}, [‘abc‘]);//创建一个Map对象
function fn(strMap){//创建一个fn的方法
let obj = {};//创建一个空对象
for (let [k,v] of strMap){//遍历出代入参数的键和值
obj[k]=v;//取出参数中的键和值来赋值给obj的键等于值
}
return obj;//返回obj
}
console.log(fn(myMap));//输出myMap代入fn()这个方法
对象转为Map
var obj ={
name:"zhang",
age:21,
money:1000
};//创建一个obj
function fn(a){//创建一个对象转Map方法
let myMap = new Map();//创建一个新Map用于接收返出来的值
for(let k of Object.keys(a)){//遍历出这个参数的键(索引)
myMap.set(k,a[k])//将下标和它的值添加给新Map
}
return myMap;//返还出新Map
}
console.log(fn(obj));//输出带着fn()方法的这个obj,将转成Mapmap
原文:http://www.cnblogs.com/t258/p/6754222.html