首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >鲁迅HH:日期间的差异

鲁迅HH:日期间的差异
EN

Stack Overflow用户
提问于 2021-11-23 08:01:34
回答 2查看 909关注 0票数 2

用鲁迅代替瞬间,并希望HH:mm中的日期时间之间的差异。有更好的方法吗?

代码语言:javascript
复制
const DateTime = luxon.DateTime;
const Interval = luxon.Interval;

const format1 = "yyyy-MM-dd HH:mm";
var time1 = '2021-11-22 10:11';
var time2 = '2021-11-22 16:12';
var start = DateTime.fromFormat(time1,format1);
var end =  DateTime.fromFormat(time2,format1);
var diff = end.diff(start);
var i = Interval.fromDateTimes(start, end);
var sec = i.length('seconds') ;
var hours = Math.floor(sec / 60 / 60);
var minutes = Math.floor(sec / 60) - (hours * 60);
var formatted = hours.toString().padStart(2, '0') + ':' + minutes.toString().padStart(2, '0'); //"HH:mm"
alert(formatted); //06:01
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-11-24 05:22:52

代码语言:javascript
复制
end.diff(start, "seconds", "minutes").toFormat("hh:mm"); // => 6:01
票数 1
EN

Stack Overflow用户

发布于 2021-11-24 05:23:15

您可以使用duration.toFormat()实现相同的结果。使用功能应用程序:

代码语言:javascript
复制
const {DateTime} = luxon;

function parseDT (dt, format = 'yyyy-MM-dd HH:mm') {
  // You can optionally implement any datetime string validation here
  return DateTime.fromFormat(dt, format);
}

function getDurationString (dt1, dt2, format = 'hh:mm') {
  return parseDT(dt2).diff(parseDT(dt1)).toFormat(format);
}

console.log(getDurationString('2021-11-22 10:11', '2021-11-22 16:12')); // 06:01
console.log(getDurationString('2021-11-01 10:00', '2021-12-01 10:00')); // 721:00
代码语言:javascript
复制
<script src="https://unpkg.com/luxon@2.1.1/build/global/luxon.min.js"></script>

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70077256

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档