我目前正在使用 Angular 4 开发一个应用程序。我想知道是否可以将 map 转换为 angular 中的 json? 这是我的 map 结构
selectedLanguageDetails.set("languageName", element.languageName);
selectedLanguageDetails.set("languageCode", element.languageCode);
selectedLanguageDetails.set("internalId", element.internalId);
json结构
"languages": [
{
"internalId": 101,
"languageCode": "ms",
"languageName": "Malay"
}
],
最佳答案
要转换为对象 - 展开 Map 以获得 [key, value] 对的数组,以及 Array#reduce到一个对象。
要转换为字符串 - 不要使用 reduce,而是使用 Array#map将每对转换为字符串,以及 Array#join结果:
const selectedLanguageDetails = new Map();
selectedLanguageDetails.set("languageName", "English");
selectedLanguageDetails.set("languageCode", "en");
selectedLanguageDetails.set("internalId", 15);
const obj = [...selectedLanguageDetails].reduce((o, [key, value]) => (o[key] = value, o), {});
const string = [...selectedLanguageDetails].map(([key, value]) => `${key}:${value}`).join(', ');
console.log(obj);
console.log(string);
关于javascript - 以 Angular 将 map 转换为json对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46970654/