Я пытаюсь построить таблицу от времени начала до конца дня с определенным шагом.
например: если пользователь выбирает 15-минутное приращение, начиная с 8:10, время идет 8: 10,8: 25,8: 40,8: 55,9: 10 ...
Мой текущий код не исправляет работу, мы перешли на следующий час, а затем снова начали смещение, например, я получаю: 815,830,845,905,935,1025,1125,1225,1325 ...
Вот JSFiddle https://jsfiddle.net/inboxdesign/c8f2dhng/13/
Вот код, который у меня есть;
// from select:
let $first_hour = 8;
let $first_minute = 10;
let day_count = 1; // don't worry about this;
let duration = 15; // increment
var offset = 0;
var current_time = parseInt($first_hour + $first_minute);
for (var i = 0; i < 120; i++) {
if (current_time < 2400) {
var time_string = ('' + current_time);
var time_minutes = parseInt(time_string.substring(time_string.length - 2));
if (time_minutes < 60) {
// offset = 0;
times += '<tr>';
for (var d = 1; d <= day_count; d++) {
times += '<td>d: ' + d + ' : time: ' + current_time + ' ->' + time_string.substring(time_string.length - 2) + ' offset: ' + offset +'</td>';
}
times += '</tr>';
} else {
offset = (time_minutes - 60);
// times += '<tr>';
// times += '<td>o:' + offset + ' tm: ' + time_minutes + '</td>';
// time_minutes = offset;
// times += '</td>';
}
}
console.log('current_time: ' + current_time);
current_time = parseInt(current_time + duration + offset);