拥有具有此结构的对象:
anObject = {
"a_0" : [{"isGood": true, "parameters": [{...}]}],
"a_1" : [{"isGood": false, "parameters": [{...}]}],
"a_2" : [{"isGood": false, "parameters": [{...}]}],
...
};
我想将所有isGood
值设置为true
。我已经尝试使用_forOwn来浏览对象而forEach遍历每个属性,但似乎这不是正确的方法。
_forOwn(this.editAlertsByType, (key, value) => {
value.forEach(element => {
element.isSelected = false;
});
});
错误说:
value.forEach不是函数
答案 0 :(得分:4)
在对象forEach()
map()
和anObject
var anObject = {
"a_0" : [{"isGood": true, "parameters": []}],
"a_1" : [{"isGood": false, "parameters": []}],
"a_2" : [{"isGood": false, "parameters": []}]
};
Object.keys(anObject).forEach((key)=>{
anObject[key].map(obj => obj.isGood = true);
});
console.log(anObject);
答案 1 :(得分:3)
实际上你非常接近,你需要使用Object.keys()
获取keys
对象的anObject
,然后循环遍历它们,最后修改每个array
。< / p>
anObject = {
"a_0": [{
"isGood": true,
"parameters": [{}]
}],
"a_1": [{
"isGood": false,
"parameters": [{}],
}],
"a_2": [{
"isGood": false,
"parameters": [{}],
}],
//...
};
Object.keys(anObject).forEach(k => {
anObject[k] = anObject[k].map(item => {
item.isGood = true;
return item;
});
})
console.log(anObject);
&#13;