Начну по порядку:
Есть глобальный массив ligues в который я делаю push объекты полученные в функции GetData(). Однако когда я обращаюсь к GetData() в функции FillLiguesMenu(seazon), то данный массив возвращается с объектами, но в виде Arra[0],
хотя запушенные объекты в нем присутствуют. в итоге я не могу пройтись по этому массиву в той же FillLiguesMenu(seazon) - второй цикл for. Перенести функцию FillLiguesMenu(seazon) в GetData() я не хочу, та как я ею буду пользоваться в других частях кода.
var country = ['en', 'it', 'de', 'es'];
var seazons = ['2012-13', '2013-14', '2014-15', '2015-16', '2016-17'];
var ligues = [];
function Initialize() {
FillSezonCombo();
FillLiguesMenu(seazons[seazons.length - 1]);
}
function GetData(country, seazon) {
$.get('https://raw.githubusercontent.com/opendatajson/football.json/master/' + seazon + '/'+ country +'.1.clubs.json', function (text, status) {
data1 = JSON.parse(text);
console.log(data1);
currentLigue = new Ligues(data1, country);
ligues.push(currentLigue);
console.log(ligues.length);
});
$.get('https://raw.githubusercontent.com/opendatajson/football.json/master/' + seazon + '/' + country + '.1.json', function (text, status) {
data2 = JSON.parse(text);
console.log(data2);
});
}
function FillSezonCombo() {
var currentSeazon = '2016-17';
$('.btn-seazon').append('SEAZON ' + currentSeazon + ' <span class="caret"></span>');
for (var i = 0; i < seazons.length; i++) {
$('.seazon-items').append('<li class="sz-item"><a href="#">' + seazons[i] + '</a></li>');
}
$('.sz-item').click(function () {
$('.btn-seazon').empty();
currentSeazon = $(this).text();
$('.btn-seazon').append('SEAZON ' + currentSeazon + ' <span class="caret"></span>');
});
}
function FillLiguesMenu(seazon) {
for (let i = 0; i < country.length; i++) {
GetData(country[i], seazon);
}
console.log(ligues.length);
for (let j = 0; j < ligues.length; j++) {
console.log(ligues[j].country);
console.log(ligues[j].liguesName);
$('.ligue').append('<li class="' + ligues[j].country + '">' + ligues[j].liguesName + '</li>');
}
}
function Ligues(data, country) {
this.country = country;
this.liguesName = data.name;
}