Javascript 我如何将时间舍入到小时和分钟,而不是小时、分钟和秒?

Javascript 我如何将时间舍入到小时和分钟,而不是小时、分钟和秒?,javascript,function,date,datetime,time,Javascript,Function,Date,Datetime,Time,例如,我的函数返回如下时间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"); } 我们可以使用下面的代码通过删除秒部分来创建新日期 var d = new Date() var d1 = new Date(d.getYear()

例如,我的函数返回如下时间
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");
}

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

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

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

函数createRoundedDate(日期){
var ts=date.getTime();
ts=数学四舍五入(ts/60000)*60000;
返回新日期(ts);
}

log(createRoundedDate(new Date())
这应该可以做到,并且可以处理超过几个小时的事务等(60000个刻度是1分钟)


这回答了你的问题吗?这是5分钟,但你可以很容易地改变你使用的日期时间格式化程序。另外,记得问问自己你想要的东西是否有意义。只是“不显示秒数”几乎总是可以的,因为说到时间,它不是“10:44”,直到超过“10:43:59”。时间通常不会“四舍五入”。这只会删除秒数,但不会四舍五入?它不会四舍五入。在第一条注释的链接中,正确的答案是“滴答声”,你的意思是毫秒是吗?添加
.toLocaleTimeString(“it it”,{hour:'numeric',minute:'2-digital'})
将完成此任务。:-)
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");
}