JavaScript使用键数组从值数组更新字典

JavaScript使用键数组从值数组更新字典,javascript,arrays,dictionary,Javascript,Arrays,Dictionary,我有一个字典(嵌套)、一个键数组和一个值数组。我需要使用键数组作为地址,用给定的值更新字典。例如: dict = {"a":{"b":[{"c":1,"d":2},{"c":3,"d":4}]}} address = [["a","b",0,"c"],["a","b",1,"d"]] value = [10,40] 所需输出为: dict = {"a":{"b":[{"c":10,"d":2},{"c":3,"d":40}]}} 我如何在JavaScript中做到这一点?您可以按照以

我有一个字典(嵌套)、一个键数组和一个值数组。我需要使用键数组作为地址,用给定的值更新字典。例如:

dict = {"a":{"b":[{"c":1,"d":2},{"c":3,"d":4}]}}  
address = [["a","b",0,"c"],["a","b",1,"d"]]  
value = [10,40]
所需输出为:

dict = {"a":{"b":[{"c":10,"d":2},{"c":3,"d":40}]}}

我如何在JavaScript中做到这一点?

您可以按照以下思路做一些事情:

const dict={“a”:{“b”:[{“c”:1,“d”:2},{“c”:3,“d”:4}]},
地址=[“a”、“b”、0、“c”]、[“a”、“b”、1、“d”],
值=[10,40];
//每个地址
address.forEach((路径,索引)=>{
设el=dict;
//对于每个地址片段
for(设i=0;ilog(JSON.stringify(dict))您可以使用一个函数来设置值并减少到内部属性的路径

函数setValue(对象,[…键],值){
var last=keys.pop();
keys.reduce((o,k)=>o[k],object)[last]=值;
}
var dict={a:{b:[{c:1,d:2},{c:3,d:4}]},
地址=[“a”、“b”、0、“c”]、[“a”、“b”、1、“d”],
值=[10,40],
我
l=地址长度;
对于(i=0;i控制台日志(dict)您是如何在JavaScript中实现这一点的?