我有一个javascript数组作为
arr = [{"class":"a"},{"sub_class":"b"},{"category":"c"},{"sub_category":"d"}]我需要一个新数组,如下所示:
new_arr = [{"class":"a", "sub_class":"b", "category":"c", "sub_category":"d"}]是否可以在不使用for循环遍历arr的情况下在Javascript中执行此操作
发布于 2020-07-09 00:10:21
您可以使用Object.assign
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);
发布于 2020-07-09 00:11:24
我认为你想要合并对象。您可以使用扩散运算符或Object.assign。我不明白在数组中只有一个对象有什么意义。考虑到您的需求,您可以这样做:
const merged = arr.reduce((list, curr) => {
return Object.assign({}, list, curr);
}, {});
const newArr = [merged];发布于 2020-07-09 00:26:28
你可以试试这个。
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);https://stackoverflow.com/questions/62798885
复制相似问题