首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将字典数组转换为javascript中的单个字典数组

将字典数组转换为javascript中的单个字典数组
EN

Stack Overflow用户
提问于 2020-07-09 00:05:17
回答 3查看 112关注 0票数 0

我有一个javascript数组作为

代码语言:javascript
复制
arr = [{"class":"a"},{"sub_class":"b"},{"category":"c"},{"sub_category":"d"}]

我需要一个新数组,如下所示:

代码语言:javascript
复制
new_arr = [{"class":"a", "sub_class":"b", "category":"c", "sub_category":"d"}]

是否可以在不使用for循环遍历arr的情况下在Javascript中执行此操作

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-07-09 00:10:21

您可以使用Object.assign

代码语言:javascript
复制
const array = [{
  "class": "a"
}, {
  "sub_class": "b"
}, {
  "category": "c"
}, {
  "sub_category": "d"
}]

const mergedObject = Object.assign({}, ...array);

// And put in an Array if that was intentional
const newArray = [mergedObject];

console.log(newArray);

票数 5
EN

Stack Overflow用户

发布于 2020-07-09 00:11:24

我认为你想要合并对象。您可以使用扩散运算符或Object.assign。我不明白在数组中只有一个对象有什么意义。考虑到您的需求,您可以这样做:

代码语言:javascript
复制
const merged = arr.reduce((list, curr) => {
   return Object.assign({}, list, curr);
}, {});

const newArr = [merged];
票数 1
EN

Stack Overflow用户

发布于 2020-07-09 00:26:28

你可以试试这个。

代码语言:javascript
复制
var arr = [{"class":"a"},{"sub_class":"b"},{"category":"c"},{"sub_category":"d"}];
var res=[];
var res1=[];
res=Object.assign(...arr);
res1.push(res);

console.log("Result: ",res1);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62798885

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档