В настоящее время, когда я ввожу +30 минут, это изменит время на целый час. Как бы я заставил функцию контрольной минуты обновлять только минуты? Как бы я это сделал, моя функция checkMinute не работает должным образом
Вот мой текущий код:
function startTime() {
var d=new Date();
var h=d.getUTCHours();
var m=d.getUTCMinutes();
var s=d.getUTCSeconds();
h = checkHour(h);
m = checkMinute(m);
s = checkTime(s);
document.getElementById('txt3').innerHTML = + checkHour(h-5)+":"+checkminute(m+30+":"+s;
document.getElementById('txt1').innerHTML = + checkHour(h+11)+":"+m+":"+s;
document.getElementById('txt2').innerHTML = +h+":"+m+":"+s;
document.getElementById('txt4').innerHTML = + checkHour(h+9)+":"+m+":"+s;
document.getElementById('txt5').innerHTML = + checkHour(h-10)+":"+m+":"+s;
}
function checkTime(i) {
var j = i;
if (i < 10) {
j = "0" + i;
}
return j; }
function checkHour(i) {
var j = i;
if(i > 23) {
j = j-24;
}
if (i < 0) {
j="0"+i;
}
return j;
}
function checkMinute(i) {
var j = i;
if(i > 59) {
j = j+30;
}
if(i < 0) {
j ="0"+i;
}
}
return j;
}
}
setInterval(function() {
startTime();
}, 500);
})(jQuery);
Я думаю об изменении моего кода с помощью модуля и получил это, но мне интересно, как бы Я редактирую его так, чтобы я мог заменить свой код на него, и все переменные меняются правильно
console.log(display(60 * 60 * 2.5 + 25)) // 2.5 hours + 25 seconds
function display (seconds) {
const format = val => `0${Math.floor(val)}`.slice(-2)
const hours = seconds / 3600
const minutes = (seconds % 3600) / 60
return [hours, minutes, seconds % 60].map(format).join(':')
}