var m = new Map([['name','a'],['age',10],['a',3]]);
//map转为数组
[...m];
[...m.keys()];
[...m.value()];
复制代码
//数组转为map
var m = new Map([['name','a'],['age',10],['a',3]]);
var m2 = [...m];
var m3 = new Map(m2); 复制代码
//map转为对象
var m = new Map([['name','a'],['age',10],['a',3]]);
var obj = {};
for(let [k,v] of m){
obj[k] = v;
};
console.log(obj);复制代码
//对象转为map
var obj2 = {msg:'hello',flag:true};
var m = new Map();
for(let k in obj2){
m.set(k,obj2[k])
}; 复制代码
//4、另一种方式 对象转map
function objToStrMap(obj) {
let m = new Map();
for (let k of Object.keys(obj)) { //name value for...of 不能遍历对象
m.set(k, obj[k]);
}
return m;
};
objToStrMap({name:1, value:2});
//Object.keys()
var obj2 = {msg:'hello',flag:true};
console.log(Object.keys(obj2)); //["msg", "flag"]
console.log(Object.values(obj2)); //["hello", true] 复制代码