Я просто не могу понять это.Итак, у меня есть классная команда и классный игрок.Объекты игрока хранятся в их команде (объекте).
Сами команды хранятся в объекте listofteams.
Каждый раз, когда создается команда или игрок, я хочу, чтобы javascript проходил черезперечислите и добавьте каждую команду со своими игроками.Например:
КОМАНДА 1 - Игрок 1 - Игрок 2
КОМАНДА 2 - Игрок 3
К сожалению, текущий вывод выглядит следующим образом:
КОМАНДА 1- Игрок 1 - Игрок 2 - Игрок 3
КОМАНДА 2 - Игрок 3 принадлежит команде 2, но напечатан под командой 1.
Как мне управлятьциклически перебирать мои объекты и массивы, чтобы игроки добавлялись ниже команды, к которой они фактически принадлежат?
Вот классы:
class Team {
constructor(teamname, teamleague ) {
this.teamname = teamname;
this.teamleague = teamleague;
this.players = [];
this._id = this.generateid();
}
generateid() {
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
var r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8);
return v.toString(16);
});
}
};
class Player {
constructor (playerteam, playerfirstname, playerlastname, playernumber) {
this.playerteam = playerteam;
this.playerfirstname = playerfirstname;
this.playerlastname = playerlastname;
this.playernumber = playernumber;
this.team_id = $('#select-native-2 option:selected').attr("id");
}
};
Вот мой цикл:
function writeall () {
$("#teamappendarea").empty();
for(element in listOfTeams){
$("#teamappendarea").append("<p>" + listOfTeams[element].teamname + "</p>");
for (var i = 0; i < listOfTeams[element].players.length; i++){
$("#teamappendarea").append("<p>" + listOfTeams[element].players[i].playerlastname + "</p>");
}
}
};
console.log команд показывает
{
"981929ef-c918-4e59-9296-49581bcba144": {
"teamname": "team1",
"teamleague": "",
"players": [{
"playerteam": "team1",
"playerfirstname": "Player1",
"playerlastname": "Player1",
"playernumber": "1111",
"team_id": "981929ef-c918-4e59-9296-49581bcba144"
}, {
"playerteam": "team2",
"playerfirstname": "Player2",
"playerlastname": "Player2",
"playernumber": "1111",
"team_id": "7d2ab469-a33a-4246-94d1-fdc98886f0c1"
}],
"_id": "981929ef-c918-4e59-9296-49581bcba144"
},
"7d2ab469-a33a-4246-94d1-fdc98886f0c1": {
"teamname": "team2",
"teamleague": "",
"players": [],
"_id": "7d2ab469-a33a-4246-94d1-fdc98886f0c1"
}
}