我需要使用 moment 以 hh:mm:ss
格式获取两个日期之间的持续时间。但我无法得到确切的差异。这是我的例子。
let start = moment("2018-07-27T14:56:33.763Z");
let end = moment("2018-07-28T14:56:33.763Z");
let diff = end.diff(start);
let f = moment.utc(diff).format("HH:mm:ss");
alert(f);
对于上述日期,我需要将输出获取为 24:00:00
,因为有一天的差异。但我收到 00:00:00
作为响应。
如果我要更改时间,它应该据此显示。我怎样才能做到这一点?有人可以帮我解决这个问题吗?
最佳答案
关于Moments GitHub Page有一个相当长的讨论但这可能就是您所追求的:
let start = moment("2018-07-27T14:56:33.763Z");
let end = moment("2018-07-28T14:56:33.763Z");
let duration = moment.duration(end.diff(start));
let f = Math.floor(duration.asHours()) + moment.utc(duration.asMilliseconds()).format(":mm:ss")
alert(f);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.js"></script>
顺便说一下,有一个plugin有人为此特定问题创建了该问题,该问题发布在 Moments Website也是如此。
关于javascript - 如何利用时刻获得不同的时差?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51595516/