Javascript 将日期字符串转换为已过去的小时:分钟

Javascript 将日期字符串转换为已过去的小时:分钟,javascript,date,Javascript,Date,我有以下日期字符串:2020-04-21T15:28:26.000Z 我想把它转换成从那以后经过的小时和分钟数 例如:5:10 函数getPassedTime(dateStr){ const date=新日期(dateStr); const now=新日期(); var diff=now.getTime()-date.getTime(); var diffInMinutes=数学整数(diff/60000); 变量小时=(差异分钟/60); var passeHours=数学楼层(小时); va

我有以下日期字符串:
2020-04-21T15:28:26.000Z

我想把它转换成从那以后经过的小时和分钟数

例如:
5:10

函数getPassedTime(dateStr){ const date=新日期(dateStr); const now=新日期(); var diff=now.getTime()-date.getTime(); var diffInMinutes=数学整数(diff/60000); 变量小时=(差异分钟/60); var passeHours=数学楼层(小时); var分钟=(小时-经过小时)*60; var passedMinutes=数学整数(分钟); 返回时间+“:”+经过的分钟; } console.log(getPassedTime('2020-04-21T15:28:26.000Z')) 函数getDiffTime(时间){ const old=新日期(时间) const now=新日期(); const diff=现在-旧的; 常数msInHrs=1000*60*60; 常数msInMn=1000*60; 常数小时=数学楼层(差异/msInHrs); 常数mn=数学层((差异%(小时*msInHrs))/msInMn); 返回`${hrs}:${mn}`; }
控制台日志(getDiffTime('2020-04-21T15:28:26.000Z')这不会将分钟填充为2位数。您还可以组合一些步骤来减少代码,例如
let diff=Date.now()-Date.parse(time);设hrs=diff/3.6e6 | 0;让分钟=(差异%3.6e6)/6e4 | 0
:-)这也应该更有效,因为它不会创建任何日期对象。