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



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

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

我会得到该日期的毫秒数,然后将该值四舍五入为分钟(1分钟=60000毫秒(。

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

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

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

这应该可以做到,并处理超过数小时的事务等(60000个ticks是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");
}

最新更新