首页 > 解决方案 > 打字稿:查找日期/小时/分钟的日期差异

问题描述

我正在进行日期比较,我正在尝试以日期、小时、分钟的格式计算和显示两个日期之间的差异......日期值存储在数据库中,如:

EndDate : 2018-11-29 10:49:49.9396033
PurchaseDate: 2018-11-29 10:49:07.4154497

在我的 Angular 组件中,我有:

let result = new Date(res.endDate).valueOf() - new Date(res.purchaseDate).valueOf();

这导致:42524我不确定它代表什么。

我想知道计算两个日期之间时间差的正确方法是什么,以及如何以正确且可读的方式显示结果。

欢迎任何帮助

标签: javascriptangulartypescriptdate

解决方案


Codepen 中的工作示例

 let endDate = new Date("2018-11-29 10:49:07.4154497");
 let purchaseDate = new Date("2018-11-29 10:49:49.9396033");
 let diffMs = (purchaseDate - endDate); // milliseconds
 let diffDays = Math.floor(diffMs / 86400000); // days
 let diffHrs = Math.floor((diffMs % 86400000) / 3600000); // hours
 let diffMins = Math.round(((diffMs % 86400000) % 3600000) / 60000); // minutes
 console.log(diffDays + " days, " + diffHrs + " hours, " + diffMins + " 
 minutes");

推荐阅读