Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.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
如何在不使用for循环的情况下通过jquery/javascript访问这个JSON结构?_Javascript_Jquery_Json - Fatal编程技术网

如何在不使用for循环的情况下通过jquery/javascript访问这个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": [       {  

我有一个JSON结构,我正在尝试访问它,但没有成功

{
   "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循环。