如何通过TypeScript或JavaScript映射JSON结构以重新格式化并删除一些不需

我收到来自添加了M和SS的数据库(DynamoDB)的响应。我只想要一个干净的结构。映射出来的最简单方法是什么?


输入


[{"M":{"usernameFormatOptionsCreate":{"SS":["sms"]}}},{"M":{"UsernameFormatOptionsChange":{"SS":["sms"]}}}]


预期产量


[ { "usernameFormatOptionsCreate": ["sms"] },

{ "usernameFormatOptionsChange": ["sms"] }]


Cats萌萌
浏览 288回答 2
2回答

潇潇雨雨

您可以使用Object.keys和Object.values获取第一个键和值,如下所示let arr = [{"M": {"usernameFormatOptionsCreate": {"SS": ["sms"]}}}, {"M": {"UsernameFormatOptionsChange": {"SS": ["sms"]}}}];let output = arr.map(function(c){  let key = Object.keys(c.M)[0];  let value = Object.values(c.M[key])[0];  let result = {};  result[key] = value;  return result;});console.log(output)

叮当猫咪

let input = [{"M": {"usernameFormatOptionsCreate": {"SS": ["sms"]}}}, {"M": {"UsernameFormatOptionsChange": {"SS": ["sms"]}}}];let output = input.map(({M}) => {  let y = {};  Object.entries(M).forEach(([key, {SS}]) => {    y[key] = SS;  });  return y;});console.log(output);
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript