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

fbm*_*fbm 3 javascript json angular2-template angular

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

  selectedLanguageDetails.set("languageName", element.languageName);
          selectedLanguageDetails.set("languageCode", element.languageCode);
          selectedLanguageDetails.set("internalId", element.internalId);
Run Code Online (Sandbox Code Playgroud)

json结构

 "languages": [
    {
    "internalId": 101,
    "languageCode": "ms",
    "languageName": "Malay"
    }
    ],
Run Code Online (Sandbox Code Playgroud)

Ori*_*ori 5

转换为对象 - 展开 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);
Run Code Online (Sandbox Code Playgroud)