Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.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 无法更新循环中的json值_Javascript_Json - Fatal编程技术网

Javascript 无法更新循环中的json值

Javascript 无法更新循环中的json值,javascript,json,Javascript,Json,我正在编写一个js代码,其中需要根据另一个JSON的条件更新1个JSON。这是我的密码 var a=[{ “a”:“未启动” }, { “b”:“未启动” }, { “c”:“未启动” }, { “d”:“未启动” }, { “e”:“未启动” }]; 变量b=[{ “Id”:1, “阶段”:“c” }]; a、 forEach((obj)=>{ for(Object.entries(a))的常量[key,value]{ a、 值='complete' 如果(键==b[0]。阶段) 打破 }

我正在编写一个js代码,其中需要根据另一个JSON的条件更新1个JSON。这是我的密码

var a=[{
“a”:“未启动”
}, {
“b”:“未启动”
}, {
“c”:“未启动”
}, {
“d”:“未启动”
}, {
“e”:“未启动”
}];
变量b=[{
“Id”:1,
“阶段”:“c”
}];
a、 forEach((obj)=>{
for(Object.entries(a))的常量[key,value]{
a、 值='complete'
如果(键==b[0]。阶段)
打破
}
});
控制台日志(a)
var a=[{
“a”:“未启动”
}, {
“b”:“未启动”
}, {
“c”:“未启动”
}, {
“d”:“未启动”
}, {
“e”:“未启动”
}];
变量b=[{
“Id”:1,
“阶段”:“c”
}];
var idx=a.findIndex(x=>Object.keys(x)[0]==b[0].Stage);

对于(var i=0;i如果对象的键是字母字符(假设您提供的示例不是泛化的),您可以使用字符代码的顺序:

const a=[{
“a”:“未启动”
}, {
“b”:“未启动”
}, {
“c”:“未启动”
}, {
“d”:“未启动”
}, {
“e”:“未启动”
}];
常数b=[{
“Id”:1,
“阶段”:“c”
}];
对于(a的obj){
常量键=对象键(obj)[0]

if(key.charCodeAt(0)更通用的解决方案,如果
b
可以包含多个元素:

var a=[{
“a”:“未启动”
}, {
“b”:“未启动”
}, {
“c”:“未启动”
}, {
“d”:“未启动”
}, {
“e”:“未启动”
}];
变量b=[{
“Id”:1,
“阶段”:“b”
}, {
“Id”:2,
“阶段”:“c”
}];
const currStage=b.sort((a,b)=>b[“Id”]-a[“Id”])[0][“Stage”]
a=a.map(e=>{
常量[[字母,状态]]=对象项(e)

const inStage=letter.charCodeAt(0)1.a是一个数组而不是一个对象,因此a.2没有任何条目。a.value也是如此(即使引用obj,它也应该是obj[key]而不是obj.value。3.array.forEach通常不会修改数组,而是有一个array.map()为此。嘿@Ran Turner。这就是我要找的。非常感谢,伙计。你非常欢迎我的朋友。如果可能的话,我会感谢你的支持(:是的,伙计。完成了