我想同时向多个 JSON 对象添加名称。
我尝试过这个:
let jdata = fs.readFileSync('participants.json');
let json = JSON.parse(jdata);
jury = ["jury1", "jury2"];
for(i=1; i<3; i++){
data = json.jury[i];
console.log(data);
}
我的 JSON 文件: { “陪审团1”:[ “姓名1”, “姓名2”, “姓名3” ], “陪审团2”:[ “姓名1”, “姓名2”, “姓名3” ] } 这给了我一个错误:
data = json.jurys[i];
^
类型错误:无法读取未定义的属性“1”
我以前没有使用过 JSON,并且不确定如何从这些对象中获取所有值。有人可以告诉我我做错了什么吗?感谢您的宝贵时间和帮助!
最佳答案
TypeError: Cannot read property '1' of undefined
您的 json
没有 jury
属性。
因此,json.jury
返回undefined
,因此出现错误。
成功
for(i=0; i<jury.length; i++)
{
data = json[jury[i]]; //notice the change here
console.log(data);
}
关于javascript - 从多个 JSON 对象获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46827616/