Как с помощью Javascript редактировать время так, чтобы при добавлении целого числа к минутам он корректировал час, когда минуты достигают 60 - PullRequest
0 голосов
/ 16 марта 2020

В настоящее время, когда я ввожу +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(':')
}
...