Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.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 循环对象,重复仅显示一次_Javascript_Jquery_Json_Ajax_Rest - Fatal编程技术网

Javascript 循环对象,重复仅显示一次

Javascript 循环对象,重复仅显示一次,javascript,jquery,json,ajax,rest,Javascript,Jquery,Json,Ajax,Rest,我有这个代码,我想在相邻的行中显示所有具有相同比赛日的球队,这意味着比赛日将显示在第一行,然后是当天比赛的球队 我试过这个 var fixtures = [ { "matchday": 1, "homeTeamName": "Arsenal FC", "awayTeamName": "Leicester City FC" }, { "matchda

我有这个代码,我想在相邻的行中显示所有具有相同比赛日的球队,这意味着比赛日将显示在第一行,然后是当天比赛的球队

我试过这个

 var fixtures = [
        {
          "matchday": 1,
            "homeTeamName": "Arsenal FC",
            "awayTeamName": "Leicester City FC"
          },
           {
          "matchday": 1,
              "homeTeamName": "AFC Bournemouth",
              "awayTeamName": "Watford FC",
          },
            {


            "matchday": 1,
                "homeTeamName": "Burnley FC",
                  "awayTeamName": "West Bromwich Albion FC",
              },
               {
              "matchday": 1,
                "homeTeamName": "Leicester City FC",
                  "awayTeamName": "Brighton & Hove Albion",
              },
             {
               "matchday": 2,
                  "homeTeamName": "Liverpool FC",
                  "awayTeamName": "Crystal Palace FC",
              },
               {
               "matchday": 2,
                  "homeTeamName": "Stoke City FC",
                  "awayTeamName": "Arsenal FC",
              },

            ];
var x='';
用于(固定装置中的var键){
x+='比赛日:'+fixtures[key]。比赛日+''+
''+装置[键]。homeTeamName+''
''+fixtures[key].awayTeamName+'';
}
$(“#test”).html(x);

但是你可以这样做,这只是一个新的“比赛日”

var x = '';

for(var key in fixtures){
                x += '<tr><th colspan="2">Match Day: ' + fixtures[key].matchday + '</th></tr>'+
                '<tr><td>' + fixtures[key].homeTeamName + '</td>' + 
                '<td>' + fixtures[key].awayTeamName + '<td></tr>';

            }


$("#test").html(x);
var mday=0;
用于(固定装置中的var键){
如果(mday!=fixtures[key].matchday){
mday=装置[key]。比赛日
x+='比赛日:'+fixtures[key].比赛日+'';
}
x+=''+装置[键]。homeTeamName+''+
''+fixtures[key].awayTeamName+'';
}
演示

var装置=[{
“比赛日”:1,
“homeTeamName”:“阿森纳足球俱乐部”,
“awayTeamName”:“莱斯特市足球俱乐部”
},
{
“比赛日”:1,
“homeTeamName”:“AFC伯恩茅斯”,
“awayTeamName”:“沃特福德足球俱乐部”,
},
{
“比赛日”:1,
“homeTeamName”:“Burnley FC”,
“awayTeamName”:“西布罗姆维奇阿尔比翁足球俱乐部”,
},
{
“比赛日”:1,
“homeTeamName”:“莱斯特城足球俱乐部”,
“awayTeamName”:“布莱顿和霍夫阿尔比恩”,
},
{
“比赛日”:2,
“homeTeamName”:“利物浦足球俱乐部”,
“awayTeamName”:“水晶宫足球俱乐部”,
},
{
“比赛日”:2,
“homeTeamName”:“斯托克城足球俱乐部”,
“awayTeamName”:“阿森纳足球俱乐部”,
},
];
var x=“”;
var-mday=0;
用于(固定装置中的var键){
如果(mday!=fixtures[key].matchday){
mday=装置[key]。比赛日
x+='比赛日:'+fixtures[key].比赛日+'';
}
x+=''+装置[键]。homeTeamName+''+
''+fixtures[key].awayTeamName+'';
}
$(“#test”).html(x)


如果您的数组按匹配日排序(必须排序),则您可能会记住上一个项目的匹配日,并将其与当前项目进行比较。一旦它不同了,你就要为上一节添加结束标记,然后开始新的一节

请告诉我们您尝试了什么,请记住StackOverflow不是编码服务好的,检查我编辑的版本。非常感谢。@Ahmed没问题,很乐意帮忙
var mday = 0;
for (var key in fixtures) {
  if (mday != fixtures[key].matchday) {
    mday = fixtures[key].matchday
    x += '<tr><th colspan="2">Match Day: ' + fixtures[key].matchday + '</th></tr>';
  }

  x += '<tr><td>' + fixtures[key].homeTeamName + '</td>' +
    '<td>' + fixtures[key].awayTeamName + '<td></tr>';

}