My函数返回时间,例如10:43:22
。我如何将时间四舍五入到最接近的分钟,使10:43:22
变为10:43
,10: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");
}