时间返回的格式不正确

时间:2018-12-03 00:22:55

标签: javascript

时间返回错误的格式。我想以HH:MM格式返回时间。下面的代码在时间为零时不起作用,例如14:00 14:03和14:10以以下格式返回14:0、14:3或14:1。请提出一些解决方案。

function getTime() {
var time = new Date();
time.setHours(time.getHours()+1);
return time.getHours() +':'+time.getMinutes();
}

const getcurrTime = getTime();

1 个答案:

答案 0 :(得分:3)

.getHours().getMinutes()将始终返回整数。您需要填充整数:

 function getTime() {
   var time = new Date();
   time.setHours(time.getHours()+1);
   return time.getHours().toString().padStart(2, '0') +':'+time.getMinutes().toString().padStart(2, '0');
}

const getcurrTime = getTime();
console.log(getcurrTime);

出于可读性考虑,我很可能会写:

function getTime() {
  var time = new Date();
  time.setHours(time.getHours() + 1);

  var hours = time.getHours()
    .toString()
    .padStart(2, '0');
  var minutes = time.getMinutes()
    .toString()
    .padStart(2, '0');

  return hours + ":" + minutes;
}

var currentTime = getTime();

console.log(currentTime);