繁体   English   中英

以角度将地图转换为 json 对象

[英]Convert a map to a json object in angular

我目前正在使用 Angular 4 开发一个应用程序。我想知道是否可以在 angular 中将地图转换为 json ? 这是我的地图结构

  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扩展为对象。

转换为字符串 - 使用Array#map将每一对转换为字符串,而不是 reduce,使用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);

要将 Map 转换为 JSON 对象或字符串,您可以使用以下代码。

let jsonObject = {};  
selectedLanguageDetails.forEach((value, key) => {  
       jsonObject[key] = value  
});  
string jsonString = JSON.stringify(jsonObject);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM