javascript - 如何将键值对象数组转换为具有单个属性的对象数组?

我有一个这样的对象数组:

[
  { "key": "fruit", "value": "apple" },
  { "key": "color", "value": "red" },
  { "key": "location", "value": "garden" }
]

我需要将其转换为以下格式:

[
  { "fruit": "apple" },
  { "color": "red" },
  { "location": "garden" }
]

这如何使用 JavaScript 完成?

最佳答案

您可以使用 .map

var data = [
  {"key":"fruit","value":"apple"},
  {"key":"color","value":"red"},
  {"key":"location","value":"garden"}
];

var result = data.map(function (e) {
  var element = {};
  element[e.key] = e.value;
  
  return element;
});

console.log(result);

如果你使用 ES2015 你也可以这样做

var result = data.map((e) => {
   return {[e.key]: e.value};
});

Example

https://stackoverflow.com/questions/34744208/

相关文章:

css - 使用 tailwind css 设置侧边栏粘性或固定

sql-server - 尝试从 Select 创建表 - SqL Server 2008 抛出错误

php - 如何解密地穴 ("name")

sql - SQL中的IN运算符和=运算符有什么区别?

scala - 如何将单个字符转换为 Scala 的 Char 对象?

javascript - 类型错误:无法读取未定义的属性 'v4'

php - 带有回调OOP的php中的array_map

r - 将整数 "20160119"转换为 "day"的不同列 "year" "month"

php - 忽略更新功能 Laravel 5 的唯一验证

javascript - 如何检查 Node js中的变量是否为空或未定义