如何将时间四舍五入到小时和分钟而不是小时、分钟和秒?

时间:2021-04-15 15:17:00

标签: javascript function date datetime time

例如,我的函数返回这样的时间 10:43:22。我如何将时间四舍五入到最接近的分钟,使 10:43:22 变为 10:4310:43:44 变为 10:44

function time (){
    let date = new Date()
    let time = date.toLocaleTimeString("it-IT");
}

3 个答案:

答案 0 :(得分:2)

我会获取该日期的毫秒数,然后将该值四舍五入为分钟(1 分钟 = 60,000 毫秒)。

function createRoundedDate(date) {
  var ts = date.getTime();
  ts = Math.round(ts / 60000) * 60000;
  return new Date(ts);
}

console.log(createRoundedDate(new Date()))

答案 1 :(得分:0)

我们可以使用下面的代码通过删除秒部分来创建新的日期

var d = new Date()
var d1 = new Date(d.getYear(),d.getMonth(),d.getDate(),d.getHours(),d.getMinutes())
console.log(d1.toLocaleTimeString('it-IT'))

答案 2 :(得分:0)

这应该可以,并处理几个小时等(60,000 滴答是 1 分钟)

function time(){
  let date = new Date()
  let dateMins = new Date(date.getYear(),date.getMonth(),date.getDay(),date.getHours(),date.getMinutes())
  let roundedDate = new Date(dateMins.getTime() + date.getSeconds() > 30 ? 60000 : 0 )
  let time = roundedDate.toLocaleTimeString("it-IT");
}
相关问题