Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.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_Jquery_Json_Ajax - Fatal编程技术网

javascript中json的调用对象详细信息

javascript中json的调用对象详细信息,javascript,jquery,json,ajax,Javascript,Jquery,Json,Ajax,我有一个json文件,如下所示: { "courses": [{ "Name": "Course1", "Containing": { "C1": { "Name": "C1name", "When": "9-17:30" }, "C2": { "Name": "C2name", "When": "9-17:30" }, "C3": {

我有一个json文件,如下所示:

{
  "courses": [{
    "Name": "Course1",
    "Containing": {
      "C1": {
        "Name": "C1name",
        "When": "9-17:30"
      },
      "C2": {
        "Name": "C2name",
        "When": "9-17:30"
      },
      "C3": {
        "Name": "C3name",
        "When": "9-17:30"
      }
    }
  }]
}
我用的是

$.ajax({... 
用于从json获取数据的函数。但是,我无法获得“包含”部分的详细信息,我想在for循环中调用它

因此,我需要类似于
data.courses[0]的内容。包含。(插入带有for循环变量的部分)。Name

我该怎么做

非常感谢!!:)

一旦解析了JSON(这可能是ajax为您做的),您就不再处理JSON,而是处理具有嵌套属性的JavaScript对象

您要循环的对象是一个对象,因此您可以使用
for in
object.keys
(返回对象自己的可枚举属性数组)循环其属性名称,然后我们可以使用
forEach

var parsedData={
“课程”:[{
“名称”:“课程1”,
“包含”:{
“C1”:{
“名称”:“名称”,
“时间”:“9-17:30”
},
“C2”:{
“名称”:“C2name”,
“时间”:“9-17:30”
},
“C3”:{
“名称”:“名称”,
“时间”:“9-17:30”
}
}
}]
};
var containing=parsedData.courses[0]。containing;
Object.keys(包含).forEach(函数(键){
snippet.log(包含[key].Name);
});

这种方式不能与
符号一起使用。我的意思是:

var container = "C1";
data.courses[0].Containing.container;  // This doesn't work.
您需要使用
[]
方式:

var container = "C1";
data.courses[0].Containing[container]; // This works.

同样,您可以直接使用jQuery的每个函数

var parsedData={
“课程”:[{
“名称”:“课程1”,
“包含”:{
“C1”:{
“名称”:“名称”,
“时间”:“9-17:30”
},
“C2”:{
“名称”:“C2name”,
“时间”:“9-17:30”
},
“C3”:{
“名称”:“名称”,
“时间”:“9-17:30”
}
}
}]
};
$.each(parsedData.courses[0]。包含,函数(键,值){
console.log(value.Name);
});

哇<代码>snippet.log()
。哇<代码>:P
AppleCow你在吗?