Я отображаю 5 точек данных в массиве, затем 5 точек данных в массиве и, наконец, получил globalArray с этим массивом 2.
Итак, что я хочу:
- , если большинствоСреднее значение равно 200, отобразите «вверх» в массив
- , если большая часть среднего отличается от 200, отобразите «вниз» в массив и возьмите первую метку времени, где среднее значение отличается от 200.
Я пытаюсь что-то сделать, но я получил ошибку:
не может прочитать свойство 'Среднее' из неопределенного.
Ожидаемый результат: [«вверх», «вниз»] [ноль, 2019-01-15T08: 26: 00.000Z]
// ***** SCRIPT CONTINUE
getAllMetrics(regions).then(res => {
console.log(res);
/*
[[{Timestamp: 2019-01-15T08:26:00.000Z, Average: 200},
{Timestamp: 2019-01-15T08:32:00.000Z, Average: 200},
{Timestamp: 2019-01-15T08:26:00.000, Average: 200},
{Timestamp: 2019-01-15T08:29:00.000Z, Average: 200},
{Timestamp: 2019-01-15T08:35:00.000Z, Average: 200}],
[{Timestamp: 2019-01-15T08:26:00.000Z, Average: 400},
{Timestamp: 2019-01-15T08:32:00.000Z, Average: 400},
{Timestamp: 2019-01-15T08:26:00.000, Average: 400},
{Timestamp: 2019-01-15T08:29:00.000Z, Average: 200},
{Timestamp: 2019-01-15T08:35:00.000Z, Average: 200}]] */
tabRES = [];
//Loop regions
var i = -1;
TsTAB = [null, null, null];
var a=-1;
while( tabReg[++a] ){
TsTAB.push( null );
}
while (res[++i]) {
Avg = {
up: 0,
down: 0
};
Ts = "";
RespARRAY = res[i];
var j = -1;
while (RespARRAY[++j]) {
if (RespARRAY[j].Average == 200) {
Avg.up++ // IF 200 -> UP
//and push array TS
} else {
Avg.down++ // -> DOWN
//Retrieve the last
Ts = Ts || RespARRAY[j].Timestamp;
}
}
if (Avg.up > Avg.down) {
tabRES.push('up');
} else {
tabRES.push('down');
TsTAB[i] = TsTAB[i] || Ts;
}
}
console.log(tabRES);
console.log(TsTAB);
}).catch(err => {
console.log(err);
});