【发布时间】:2020-01-02 06:32:14
【问题描述】:
我遇到的问题是我有一组相同的对象,看起来像:
[
{
error:null,
permissions:{
perm1:false,
perm2:true,
perm3:false,
etc...
}
},
{
error:null,
permissions:{
perm1:true,
perm2:false,
perm3:false,
etc...
}
},
{
error:null,
permissions:{
perm1:false,
perm2:false,
perm3:false,
etc...
}
},
etc..
]
我需要做的是将所有这些“添加”在一起并得到类似的东西:
{
error:null,
permissions:{
perm1:true,
perm2:true,
perm3:false,
etc...
}
}
我想到了这段代码:
var newObj = {};
for(myObject in objectArray){
for(var [key, value] of Object.entries(myObject)){
newObj[key] = (newObj[key] === true ? true : value)
}
}
return newObj;
但这似乎并不真正有效(或者它会起作用......),我需要最有效和最快速的方法。如果您能指出我正确的方向,或者将我链接到可能对我有帮助的问题。
【问题讨论】:
-
error怎么样,它会一直是null,或者你希望新对象有什么? -
最大的问题是我从另一个函数中获取这些对象,如果其中任何一个失败,联系人和 API 来获取数据,错误就会存储在那里,这意味着如果错误!== null 我们应该退出,然后返回错误。编辑:实际上现在考虑它,我们可以忽略它。新对象不需要它,因为我在对象被扔进数组之前对它们进行了几次检查!
标签: javascript arrays performance loops