Я создаю свое первое более крупное приложение с AngularJS и испытываю трудности с созданием массива объектов для отображения данных.В настоящее время я беру файл Excel и создаю данные JSON с помощью SheetJS.В переменной «jsonData» хранится порядка 40 000 записей в формате:
Моя конечная цель - составить график «Сумма закрытия» за месяц для каждой авиакомпании.,Моя идея заключается в создании массива объектов, в котором будет храниться название авиакомпании, и массива данных о претензиях (называемых авиакомпанией DataData).У меня возникают трудности с циклическим перемещением по jsonData для добавления нужной информации в массив объектов на основе оператора if, чтобы увидеть, было ли добавлено это имя авиакомпании.
У меня есть код на github- https://github.com/mikebly/tsa-luggage-analysis
Для простоты, вот весь мой цикл через jsonData:
for(i = 0; i < jsonData.length; i++){
var date = XLSX.SSF.parse_date_code(jsonData[i]["Incident Date"],{date1904:false});
var month = date.m; // Returns 1,2,3,...,12
var airport = String(jsonData[i]["Airport Code"]);
var airline = String(jsonData[i]["Airline Name"]);
var claim = Number(jsonData[i]["Close Amount"]);
claim = claim || 0; // Convert "-" to 0 for summing and average
claimTotal += claim;
// Build airport data array of objects to keep track of each airline's individual claims
if(airlineData.includes(airline) == false){
airlineData.name = airline;
airlineData.claimTotal = claim;
} else{
continue;
}
// Build airline name array for dropdown box
if (airlineNames.includes(airline) === false){
airlineNames.push(airline);
} else{
continue;
}
// Build airport code array for dropdown box
if (airportCodes.includes(airport) === false){
airportCodes.push(airport);
} else{
continue;
}
}; // End loop through rows
Мой желаемый результат будет выглядеть примерно так:
[{name:" ",claims:[]},
{name:" ",claims:[]},
{},
//...
]
, поэтому я могу выбрать нужный набор данныхна основе имени, выбранного в раскрывающемся списке.