我在打字稿中有一个 Map<string, string>
变量:
let m = Map<string, string>().set('tag', 'v1');
我想转换为 json 字符串表示形式:
'{"tag": "v1"}'
我尝试了 3 种不同的方法。首先是使用 m.toString()
。其次是使用 JSON.stringify(m)
。两者都返回了 {}
。我什至尝试将 Map
转换为 javascript object
先转换为字符串:
function MapToString(map): string {
let ro = {};
Object.keys(map).forEach( key => {
ro[key] = map[key];
});
return JSON.stringify(ro);
}
s = MapToString(m);
当我尝试在控制台中打印它时,它也返回了 {}
。
原文由 breezymri 发布,翻译遵循 CC BY-SA 4.0 许可协议
我最终放弃了使用 es6 Map 并切换到 TSMap ,
tags.toJSON()
工作。