Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 基于另一个对象数组替换关键帧_Javascript - Fatal编程技术网

Javascript 基于另一个对象数组替换关键帧

Javascript 基于另一个对象数组替换关键帧,javascript,Javascript,我有两个对象数组,基于一个数组,我需要替换另一个数组的键。尝试使用Object.Keys(),但无法实现。恳请建议 //**输入:** 让sim={ “标题”:[{ “VKORG”:“1000”, “VTWEG”:“10” }, { “VKORG”:“1000”, “VTWEG”:“20” } ] } //**参考阵列:** 让列=[{ “字段”:“VKORG”, “字段描述”:“销售组织” }, { “字段”:“VTWEG”, “现场描述”:“分销渠道” } ] ///**我试过的代码**

我有两个对象数组,基于一个数组,我需要替换另一个数组的键。尝试使用Object.Keys(),但无法实现。恳请建议

//**输入:**
让sim={
“标题”:[{
“VKORG”:“1000”,
“VTWEG”:“10”
},
{
“VKORG”:“1000”,
“VTWEG”:“20”
}
]
}
//**参考阵列:**
让列=[{
“字段”:“VKORG”,
“字段描述”:“销售组织”
},
{
“字段”:“VTWEG”,
“现场描述”:“分销渠道”
}
]
///**我试过的代码**
for(设i=0;i控制台日志(sim)并不完美,但请尝试此方法

let sim={
“标题”:[
{
“VKORG”:“1000”,
“VTWEG”:“10”
},
{
“VKORG”:“1000”,
“VTWEG”:“20”
}
]
};
让列=[
{
“字段”:“VKORG”,
“字段描述”:“销售组织”
},
{
“字段”:“VTWEG”,
“现场描述”:“分销渠道”
}
];
常量过滤器={};
for(设i=0;i{
常量键=对象键(el);
常量newObj={}
for(键的常数键){
newObj[filter[key]]=el[key];
}
返回newObj;
});

控制台日志(sim)并不完美,但请尝试此方法

let sim={
“标题”:[
{
“VKORG”:“1000”,
“VTWEG”:“10”
},
{
“VKORG”:“1000”,
“VTWEG”:“20”
}
]
};
让列=[
{
“字段”:“VKORG”,
“字段描述”:“销售组织”
},
{
“字段”:“VTWEG”,
“现场描述”:“分销渠道”
}
];
常量过滤器={};
for(设i=0;i{
常量键=对象键(el);
常量newObj={}
for(键的常数键){
newObj[filter[key]]=el[key];
}
返回newObj;
});

控制台日志(sim)这里是一种使用Map和array.Map的方法。我们将列作为键值对存储在Map中,然后在遍历sim.header时,只需从Map中获取特定键的值并更新它

let sim={
“标题”:[{
“VKORG”:“1000”,
“VTWEG”:“10”
},
{
“VKORG”:“1000”,
“VTWEG”:“20”
}
]
}
让列=[{
“字段”:“VKORG”,
“字段描述”:“销售组织”
},
{
“字段”:“VTWEG”,
“现场描述”:“分销渠道”
}
]
var map=newmap();
columns.forEach(obj=>{
映射集(对象字段,对象字段描述);
})
sim.header=sim.header.map(obj=>{
var tempObj={};
Object.keys(obj.forEach)(key=>{
tempObj[map.get(key)]=obj[key]
})
返回tempObj;
})
控制台日志(sim);

下面是一种使用Map和array.Map的方法。我们将列作为键值对存储在Map中,然后在遍历sim.header时,只需从Map中获取特定键的值并更新它

let sim={
“标题”:[{
“VKORG”:“1000”,
“VTWEG”:“10”
},
{
“VKORG”:“1000”,
“VTWEG”:“20”
}
]
}
让列=[{
“字段”:“VKORG”,
“字段描述”:“销售组织”
},
{
“字段”:“VTWEG”,
“现场描述”:“分销渠道”
}
]
var map=newmap();
columns.forEach(obj=>{
映射集(对象字段,对象字段描述);
})
sim.header=sim.header.map(obj=>{
var tempObj={};
Object.keys(obj.forEach)(key=>{
tempObj[map.get(key)]=obj[key]
})
返回tempObj;
})
控制台日志(sim);

我给你写了一个片段。它给出了控制台错误。尝试修复这些问题-标头没有键。它是一个数组,它应该是
sim.header[i]
而不是
sim.header
,也应该是
columns[i][“FIELD”]
,因为列中的元素上没有属性头array@Sven.hig不一定我给你写了一段。它给出了控制台错误。尝试修复这些问题-标头没有键。它是一个数组,它应该是
sim.header[i]
而不是
sim.header
,也应该是
columns[i][“FIELD”]
,因为列中的元素上没有属性头array@Sven.hig不一定