Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.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_Facebook_Object_Multidimensional Array - Fatal编程技术网

Javascript 表的Json嵌套对象数组

Javascript 表的Json嵌套对象数组,javascript,json,facebook,object,multidimensional-array,Javascript,Json,Facebook,Object,Multidimensional Array,我有一个json文件,有一个对象数组。在第一个对象中,第二个数组包含+/-200个对象。是否可以在第一个表的最后一行的新表中显示第二个数组 如图所示,“Friends”列中应该有一个嵌套表 html是: <body onLoad="buildHtmlTable()"> <table id="excelDataTable" border="1"> </table> </body> 代码的其余部分是: var myList=[{ "id": "

我有一个json文件,有一个对象数组。在第一个对象中,第二个数组包含+/-200个对象。是否可以在第一个表的最后一行的新表中显示第二个数组

如图所示,“Friends”列中应该有一个嵌套表

html是:

<body onLoad="buildHtmlTable()">
<table id="excelDataTable" border="1">
</table>
</body>

代码的其余部分是:

var myList=[{
"id": "220439",
"name": "Bret Taylor",
"friends": {
  "data": [
     {
        "id": "100003461417780",
        "name": "Pedro Fernandes"
     },
     {
        "id": "100004448132997",
        "name": "Tatiane Rodrigues"
     },
     {
        "id": "100002608573875",
        "name": "Gerson Yoody"
     },
     {
        "id": "100003532942622",
        "name": "Brennen Roup"
     },
     {
        "id": "100003910478450",
        "name": "Maruxita Gomez"
     },
     {
        "id": "100003035179424",
        "name": "Ekta Vaghasia"
     },
     {
        "id": "100003034655176",
        "name": "Nikita Adam"
     },
     {
        "id": "100004269720826",
        "name": "Lukas Ks"
     },
     {
        "id": "100004489472386",
        "name": "Hong Finozaza"
     },
     {
        "id": "1436623789",
        "name": "Dianita M Ct"
     },
     {
        "id": "100004324535652",
        "name": "Ana Paula"
     },
     {
        "id": "100004433135086",
        "name": "Caroline Geovannini"
     },
     {
        "id": "100004081013147",
        "name": "Ryan Bispo Silva"
     },
     {
        "id": "1697844686",
        "name": "Louann Hyatt Clark"
     },
     {
        "id": "100003283377051",
        "name": "Ysabel Salazar"
     },
     {
        "id": "100003398360349",
        "name": "Ty SoHigh Walker"
     },
     {
        "id": "100001201489463",
        "name": "Dicu Andrei D"
     },
     {
        "id": "100001811128458",
        "name": "Cristy Torres Castellanos"
     },
     {
        "id": "1693121601",
        "name": "Jasim Amit"
     },
     {
        "id": "100001966217366",
        "name": "Candy Chhokar"
     },
     {
        "id": "100004096284395",
        "name": "Stefania Bilska"
     },
     {
        "id": "100004084157244",
        "name": "Papah Noval"
     },
     {
        "id": "1791202672",
        "name": "Bianca Agostina Gherardini"
     },
     {
        "id": "100000825894241",
        "name": "Usman Faiz"
     },
     {
        "id": "100002424916440",
        "name": "Muhammad Tajminur Rahman"
     }
  ],
  "paging": {
     "next": "https://graph.facebook.com/99394368305/likes?limit=25&after=MTAwMDAyNDI0OTE2NDQw"
  }
  }
  }];

// Builds the HTML Table out of myList json data from Ivy restful service.
 function buildHtmlTable() {
 var columns = addAllColumnHeaders(myList);

 for (var i = 0 ; i < myList.length ; i++) {
     var row$ = $('<tr/>');
     for (var colIndex = 0 ; colIndex < columns.length ; colIndex++) {
         var cellValue = myList[i][columns[colIndex]];

         if (cellValue == null) { cellValue = ""; }

         row$.append($('<td/>').html(cellValue));
     }
     $("#excelDataTable").append(row$);
 }
 }

 // Adds a header row to the table and returns the set of columns.
 // Need to do union of keys from all records as some records may not contain
 // all records
 function addAllColumnHeaders(myList)
 {

   var columnSet = [];
   var headerTr$ = $('<tr/>');

 for (var i = 0 ; i < myList.length ; i++) {
     var rowHash = myList[i];
     for (var key in rowHash) {
         if ($.inArray(key, columnSet) == -1){
             columnSet.push(key);
             headerTr$.append($('<th/>').html(key));
         }
     }
 }
 $("#excelDataTable").append(headerTr$);

 return columnSet;
 }
var myList=[{
“id”:“220439”,
“姓名”:“Bret Taylor”,
“朋友”:{
“数据”:[
{
“id”:“100003461417780”,
“姓名”:“佩德罗·费尔南德斯”
},
{
“id”:“10000448132997”,
“姓名”:“塔蒂安·罗德里格斯”
},
{
“id”:“10000268573875”,
“姓名”:“Gerson Yoody”
},
{
“id”:“100003532942622”,
“名称”:“布伦南集团”
},
{
“id”:“100003910478450”,
“名称”:“Maruxita Gomez”
},
{
“id”:“100003035179424”,
“名称”:“Ekta Vaghasia”
},
{
“id”:“100003034655176”,
“姓名”:“Nikita Adam”
},
{
“id”:“100004269720826”,
“名称”:“卢卡斯Ks”
},
{
“id”:“100004489472386”,
“名称”:“Hong Finozaza”
},
{
“id”:“1436623789”,
“名称”:“Dianita M Ct”
},
{
“id”:“1000043253552”,
“姓名”:“安娜·保拉”
},
{
“id”:“10000443313586”,
“姓名”:“Caroline Geovannini”
},
{
“id”:“10000481013147”,
“姓名”:“Ryan Bispo Silva”
},
{
“id”:“1697844686”,
“姓名”:“卢安凯悦克拉克”
},
{
“id”:“10000328377051”,
“名称”:“伊萨贝尔·萨拉扎”
},
{
“id”:“10000398360349”,
“姓名”:“Ty SoHigh Walker”
},
{
“id”:“10000201489463”,
“名称”:“Dicu Andrei D”
},
{
“id”:“100001811128458”,
“姓名”:“克里斯蒂·托雷斯·卡斯特拉诺斯”
},
{
“id”:“1693121601”,
“姓名”:“Jasim Amit”
},
{
“id”:“100001966217366”,
“名称”:“Candy Chhokar”
},
{
“id”:“10000496284395”,
“姓名”:“Stefania Bilska”
},
{
“id”:“10000484157244”,
“名称”:“新教皇”
},
{
“id”:“1791202672”,
“姓名”:“Bianca Agostina Gherardini”
},
{
“id”:“10000825894241”,
“姓名”:“乌斯曼·费兹”
},
{
“id”:“100002494916440”,
“姓名”:“穆罕默德·塔吉米努尔·拉赫曼”
}
],
“分页”:{
“下一步”:https://graph.facebook.com/99394368305/likes?limit=25&after=MTAwMDAyNDI0OTE2NDQw"
}
}
}];
//从Ivy restful服务的myList json数据构建HTML表。
函数buildHtmlTable(){
var columns=addAllColumnHeaders(myList);
对于(变量i=0;i

(数据来自facebook graph api)

您可以通过以下方式访问内部数据:myList[0].friends.data[i].id和myList[0].friends.data[i].name,只需迭代到myList[0].friends.data.length,并构建您想要的任何结构-例如,使用两个td为每个朋友创建表行-一个用于id,一个用于名称-

for(var x=0;x
您可以通过以下方式访问内部数据:myList[0].friends.data[i].id和myList[0].friends.data[i].name,只需迭代,直到达到myList[0].friends.data.length,然后构建您想要的任何结构-例如,为每个朋友创建表行,其中两个td-一个用于id,一个用于name谢谢!!这对我帮助很大!
for (var x = 0 ; x < myList[0].friends.data.length ; x++){

                $line.append( $( "<td></td>" ).html( myList[0].friends.data[x].id ) );
}