Javascript 在React Native中迭代for循环时,如何在状态对象中添加键值对?
我试图迭代状态为的Json对象(比如obj1、obj2、obj3),并在状态为的另一个对象(deepLanguageCollection)中添加键值对,以确保所有键都有一个累积值,即obj1、2、3中给定键的所有值之和 我之所以将obj1,2,3的内容传输到deepLanguageCollection,是因为obj1,2,3有一些公用键。我希望在deepLanguageCollection中具有唯一的值,这些值作为Obj1,2,3中的累积和 当我尝试这样做时,deepLanguageCollection对象只注册最后一个条目。虽然如果我在状态中直接添加键值对,那么它工作得非常好 为什么即使在使用spread操作符后也会发生这种情况?我该如何解决这个问题Javascript 在React Native中迭代for循环时,如何在状态对象中添加键值对?,javascript,arrays,reactjs,react-native,dictionary,Javascript,Arrays,Reactjs,React Native,Dictionary,我试图迭代状态为的Json对象(比如obj1、obj2、obj3),并在状态为的另一个对象(deepLanguageCollection)中添加键值对,以确保所有键都有一个累积值,即obj1、2、3中给定键的所有值之和 我之所以将obj1,2,3的内容传输到deepLanguageCollection,是因为obj1,2,3有一些公用键。我希望在deepLanguageCollection中具有唯一的值,这些值作为Obj1,2,3中的累积和 当我尝试这样做时,deepLanguageCollec
for (i = 0; i < Object.keys(this.state.Obj1).length; i++) {
key = Object.keys(this.state.Obj1)[i];
value = this.state.Obj1[Object.keys(this.state.Obj1)[i]];
this.setState({
deepLanguageCollection: {
...this.state.deepLanguageCollection,
[key] :this.state.deepLanguageCollection[key]?this.state.deepLanguageCollection[key]+value:value,//->This always pushes the LAST key-value pair in deepLanguageCollection object without the sum, just the last entry in Obj 3
},
[key]: value,//->this pushes all key-value pairs meaning unique keys and value sum in state perfectly
})
}
for(i=0;i这始终推送deepLanguageCollection对象中的最后一个键值对,而不推送总和,仅推送Obj 3中的最后一个条目
},
[key]:value,/->这将推送所有键值对,表示状态中唯一的键和值之和
})
}