Я построил два массива; они имеют тип словаря и имеют даты (даты, поступающие из базы данных). Мне нужно, чтобы эти даты были последовательными, и я разработал этот алгоритм:
var keys = Object.keys(dataStopArray);
var indexArray = 0;
for (var i = 0; i < keys.length; i++) {
if (i > 0) {
var dayP = new Date(keys[i - 1].split("/")[2], keys[i - 1].split("/")[1] - 1, keys[i - 1].split("/")[0]),
dayM = new Date(keys[i].split("/")[2], keys[i].split("/")[1] - 1, keys[i].split("/")[0]),
dayC;
if (dayP != dayM) {
dayC = dayP;
do {
var newKeys = moment(dayC);
var newArray = [];
newArray.push({
initial: newKeys.hour("00").minute("00").second("00").format("DD/MM/YYYY HH:mm:ss"),
finish: newKeys.hour("00").minute("00").second("00").format("DD/MM/YYYY HH:mm:ss")
});
newArray.push({
initial: newKeys.hour("23").minute("59").second("59").format("DD/MM/YYYY HH:mm:ss"),
finish: newKeys.hour("23").minute("59").second("59").format("DD/MM/YYYY HH:mm:ss")
});
calcDataChart(newArray);
dayC.setDate(dayC.getDate() + 1);
} while (moment(dayC).format('DD/MM/YYYY') != keys[i])
}
}
Все работает нормально, но проблема возникает, когда я открываю модальное и закрываю его, я заново разрабатываю алгоритм, который входит в цикл, то есть, пока он не находит то же значение ....
Есть ли ошибка?