Javascript / Jquery-在表中打印对象的数组

时间:2018-11-04 19:50:13

标签: javascript jquery loops

我有一个这样的对象:

    [ {
        "id":75349,
        "sportId":0,
        "groupName":"group1",
        "groupLabel":"group1",
        "date":"2018/01/01",
        "time": {
            "start":"14:30",
            "current":null,
            "state":"3",
            "matchTimestamp":1541329200,
            "delay": {
                "firstHalf": 0, "secondhalf": 5
            }
        }
        ,
        "teams": {
            "host": {
                "id": 920176, "originalId": 902565, "name": "team1", "score": [1]
            }
            ,
            "guest": {
                "id": 920166, "originalId": 44, "name": "team2", "score": [1]
            }
        }
        ,
        "events":[ {
            "id": 743342, "playerName": "player312", "status": 1, "teamId": 920166, "time": 44, "relatedPlayerName": null
        }
        ,
        {
            "id": 743351, "playerName": "player322", "status": 1, "teamId": 920176, "time": 53, "relatedPlayerName": null
        }
        ]
    }
,
{
    "id":75345,
    "sportId":0,
    "groupName":"group2",
    "groupLabel":"group2",
    "date":"2018/01/01",
    "time": {
        "start":"14:45",
        "current":null,
        "state":"3",
        "matchTimestamp":1541330100,
        "delay": {
            "firstHalf": 0, "secondhalf": 10
        }
    }
    ,
    "teams": {
        "host": {
            "id": 920173, "originalId": 901051, "name": "tesm32", "score": [0]
        }
        ,
        "guest": {
            "id": 920168, "originalId": 902250, "name": "team20", "score": [0]
        }
    }
    ,
    "events":[]
}

此对象中没有几个数组。我想显示一个表中的每个组,然后该组内的每个游戏将显示在组表下的另一个表中。

类似这样的东西:

================================
| group1
================================
| team1 - team2
================================
| team3 - team4
================================
| group2
================================
| team5 - team6
================================
| team7 - team8
================================

我尝试了以下代码:

$.each(var_send, function(index) {
        $("table").append("<tr>");
        $.each(var_send[index], function(key, value) {
            $("table").append("<td>" + value + "</td>");

        });
        $("table").append("</tr>");
    });

但是问题是我不知道如何访问此对象中的数组中的数组。这段代码的结果显示了[对象对象]在组名之后的表行中。

================================
| group1
================================
| [object Object]
================================
| group2
================================
| [object Object]
================================

我知道它看起来很复杂,我已经从Web服务中检索了此数据,并且需要在表格中显示一些详细信息(团队标签和得分)。 (对不起我的英语不好)

1 个答案:

答案 0 :(得分:0)

为您提供了一个对象数组,数组中的每个元素都有索引[0,1,2,...]。

从所附的数组示例中,要获取组名,您将执行

array_name[index]['groupName']

要获取团队名称,您将使用

array_name[index]['teams']['host']['name'] // for the host team

array_name[index]['teams']['guest']['name'] // for the guest team