如何以可读格式获取JS模板文字中Map对象的内容?
How to get content of Map object in JS template literal in readable format?
假设我有一张地图:
const m = new Map([[1,1], [2,2], [3,3]]);
以如下方式将其内联到模板文字中的最快方法是什么:
或任何其他可读格式?
P.S。这行不通:
const str = `${m}`;
您可以为其获取一个函数,该函数获取地图并创建一个字符串。
function beautify(o) {
if (o instanceof Map) {
return 'Map(' + JSON.stringify(Array.from(o.entries())) + ')';
}
return o;
}
const m = new Map([[1,1], [2,2], [3,3]]);
console.log(beautify(m));
简化 答案,我会选择
console.log(` something => ${JSON.stringify([...m])}`);
或与
console.log(` something => ${JSON.stringify(Array.from(m))}`);
假设我有一张地图:
const m = new Map([[1,1], [2,2], [3,3]]);
以如下方式将其内联到模板文字中的最快方法是什么:
或任何其他可读格式?
P.S。这行不通:
const str = `${m}`;
您可以为其获取一个函数,该函数获取地图并创建一个字符串。
function beautify(o) {
if (o instanceof Map) {
return 'Map(' + JSON.stringify(Array.from(o.entries())) + ')';
}
return o;
}
const m = new Map([[1,1], [2,2], [3,3]]);
console.log(beautify(m));
简化
console.log(` something => ${JSON.stringify([...m])}`);
或与
console.log(` something => ${JSON.stringify(Array.from(m))}`);