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

如何在Javascript中以mm-dd-hh格式获取两个日期的差

如何在Javascript中以mm-dd-hh格式获取两个日期的差

紫衣仙女 2019-12-06 15:43:22
我可以使用moment.js或纯js获得两个日期之间的差异。在moment.js中var a = moment(timestamp1);var b = moment(timestamp2);var month =a.diff(b, 'month');var day =a.diff(b, 'day') - month;var year =a.diff(b, 'hours');月返回月,日返回天差。但是我想要答案MM-DD-hh格式例如2个月12天5小时。我无法直接转换日期,因为还有leap年等其他问题。还有什么其他办法可以全力以赴并计算一切吗?我在angular js中这样做,如果有帮助
查看完整描述

3 回答

?
ITMISS

TA贡献1871条经验 获得超8个赞

var date1 = new Date("4/14/2016");

 var date2 = new Date("10/16/2016");

 var timeDiff = Math.abs(date2.getTime() - date1.getTime());


 var newDate = new Date(timeDiff);

 alert(newDate);

 alert("Month " + (newDate.getUTCMonth() + 1));

 alert("Date " + newDate.getUTCDate());

 alert("Hour " + newDate.getUTCHours());


查看完整回答
反对 回复 2019-12-06
?
红颜莎娜

TA贡献1842条经验 获得超12个赞

您无法将差异(差异结果是数字)转换为MM-DD-hh格式,因为某些月份的长度为30天,而另一些月份的长度为31天。


可以从开始和结束日期时间计算得出。


您正在寻找类似的功能,但不完全相同


moment("2010-01-01").from("2010-12-01")

结果:一年前


moment("2010-01-01").from("2010-12-01", true)

结果:一年


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

添加回答

举报

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