为了账号安全,请及时绑定邮箱和手机立即绑定

用JavaScript计算日期差异的最佳方法是什么

用JavaScript计算日期差异的最佳方法是什么

慕容森 2019-11-03 15:04:51
我在Java中做一个函数,例如VisualBasic DateDiff。您给出两个日期和返回时间间隔(秒,分钟,天等)。DateDiff(ByVal Interval As Microsoft.VisualBasic.DateInterval, _  ByVal Date1 As Date, ByVal Date2 As Date) as Long那么计算Javascript日期差异的最佳方法是什么?
查看完整描述

3 回答

?
一只名叫tom的猫

TA贡献1906条经验 获得超3个赞

像这样使用Date对象:


function DateDiff(var /*Date*/ date1, var /*Date*/ date2) {

    return date1.getTime() - date2.getTime();

}

这将返回两个日期之间的毫秒数差。将其转换为秒,分钟,小时等并不难。



查看完整回答
反对 回复 2019-11-04
?
四季花海

TA贡献1811条经验 获得超5个赞

如果您遵循本教程,一种方法是使用:


Date.getTime()

您将在此处找到完整的javascript函数,并带有日期验证。


话虽如此,如Rafi B.所评论的那样。 5年后,“ 在javascript中2个日期之间是否有区别? ”更为精确。


var _MS_PER_DAY = 1000 * 60 * 60 * 24;


// a and b are javascript Date objects

function dateDiffInDays(a, b) {

  // Discard the time and time-zone information.

  var utc1 = Date.UTC(a.getFullYear(), a.getMonth(), a.getDate());

  var utc2 = Date.UTC(b.getFullYear(), b.getMonth(), b.getDate());


  return Math.floor((utc2 - utc1) / _MS_PER_DAY);

}



查看完整回答
反对 回复 2019-11-04
?
慕田峪4524236

TA贡献1875条经验 获得超5个赞

var start = new Date(“ 2016-12-24 14:00”); var end = new Date(“ 2016-12-24 23:59”); var diffMs =(end.getTime()-start.getTime()); //从现在到圣诞节之间的毫秒数var diffDays = Math.round(diffMs / 86400000); //天var diffHrs = Math.round((diffMs%86400000)/ 3600000); //小时ar diffMins = Math.round((((diffMs%86400000)%3600000)/ 60000); //分钟console.log(diffHrs); 它返回10:59hour,它可以正常工作到23:00。发生什么问题了。

查看完整回答
反对 回复 2019-11-04
  • 3 回答
  • 0 关注
  • 250 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信