如何在不使用for循环的情况下通过jquery/javascript访问这个JSON结构?
我有一个JSON结构,我正在尝试访问它,但没有成功如何在不使用for循环的情况下通过jquery/javascript访问这个JSON结构?,javascript,jquery,json,Javascript,Jquery,Json,我有一个JSON结构,我正在尝试访问它,但没有成功 { "COURSEDETAILS": { "BTR": { "CDFULLTITLE": "Bachelor of Health Sciences", }, "BYTR": { "CDFULLTITLE": "Bachelor of Nursing (Preregistration)", } }, "STUDENT": [ {
{
"COURSEDETAILS": {
"BTR": {
"CDFULLTITLE": "Bachelor of Health Sciences",
},
"BYTR": {
"CDFULLTITLE": "Bachelor of Nursing (Preregistration)",
}
},
"STUDENT": [
{
"WSDCOURSECODE": "BTR",
"WSDSTUDENTID": 123456,
},
{
"WSDSTUDENTID": 123456,
"WSDCOURSECODE": "BYTR",
}
]
}
我可以很容易地访问学生部分。但不知道如何在每种情况下访问CDFULLTITLE我不想使用for循环进行迭代。
每个学生的BHS和BNGU都会发生变化。所以ID为234456的学生可能有WSDCOURSECODE=XXXX
我可以通过data.student[0].WSDCOURSECODE访问学生部分上的课程代码。但是我不知道如何使用它来访问COURSEDETAILS中的CDFULLTITLE
也许问题在于我的结构。请给出一个更好的方法
有人能帮忙吗?谢谢听起来像是在问如何循环JavaScript对象中的属性?您可以在中为-
使用,并以这种方式访问属性
var数据={
“课程详情”:{
“BTR”:{
“CDFULLTITLE”:“健康科学学士”,
},
“BYTR”:{
“CDFULLTITLE”:“护理学士(预注册)”,
}
},
“学生”:[
{
“WSDCOURSECODE”:“BTR”,
“WSDSTUDENTID”:123456,
},
{
“WSDSTUDENTID”:123456,
“WSDCOURSECODE”:“BYTR”,
}
]
};
for(data.COURSEDETAILS中的var项){
document.getElementById('result')。innerHTML+=data.CoursedDetails[item]。CDFULLTITLE+“
”;
}
如果我理解正确,这就是您要找的:
var json = {
"COURSEDETAILS": {
"BTR": {
"CDFULLTITLE": "Bachelor of Health Sciences",
},
"BYTR": {
"CDFULLTITLE": "Bachelor of Nursing (Preregistration)",
}
},
"STUDENT": [
{
"WSDCOURSECODE": "BTR",
"WSDSTUDENTID": 123456,
},
{
"WSDSTUDENTID": 123456,
"WSDCOURSECODE": "BYTR",
}
]
};
for (var i in json.STUDENT) {
var student = json.STUDENT[i];
var fulltitle = json.COURSEDETAILS[student.WSDCOURSECODE].CDFULLTITLE;
//use the title or the student
console.log(student, fulltitle);
}
这可以解决我的问题
data.COURSEDETAILS[data.STUDENT[0].WSDCOURSECODE].CDFULLTITLE
感谢那些花时间阅读/回复的人。:) 对不起,我应该说没有使用for循环。