gpt4 book ai didi

javascript - 计算午夜后两次之间的持续时间

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:59:51 24 4
gpt4 key购买 nike

如何计算两次之间的时长?

var start = moment('17:00', "HH:mm");
var end = moment('02:15', "HH:mm");
moment.duration(end.diff(start)).asHours()
//outputs -14.75 instead of 9.15

最佳答案

moment 构造函数默认为当前年、月和日,因此您的问题是 endstart 之前。您可以使用 isBefore 比较您的变量然后使用 addend“转换”到第二天。

请注意 asHours给出分数值(所以你将得到 9.25 而不是 9.15)。如果您需要获得“9 小时 15 分钟”,您可以使用 moment-duration-format插件(例如,您不能在 template 方法中使用 'h[.]m' 作为 format)。

这里是一个工作示例:

var start = moment('17:00', "HH:mm");
var end = moment('02:15', "HH:mm");
if( end.isBefore(start) ){
end.add(1, 'day');
}
var dur = moment.duration(end.diff(start))
var result = dur.asHours();
document.writeln(result);
document.write(dur.format('h[.]m'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-duration-format/1.3.0/moment-duration-format.min.js"></script>

关于javascript - 计算午夜后两次之间的持续时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42784265/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com