gpt4 book ai didi

javascript - 如何从javascript中的两个日期获取天数和精确分钟数、精确小时数?

转载 作者:行者123 更新时间:2023-11-28 13:08:52 24 4
gpt4 key购买 nike

我有开始日期时间和结束时间,我需要分割两个日期中有多少天,小时,分钟

例如, 开始日期时间 = "09-06-2017 10:30" 结束日期时间 =“10-06-2017 11:45”

我需要这个结果:1 天 1 小时 15 分钟

我试试这个

var t = end - start;
var z = parseInt(t / 1000 / 60);
var time = display(z);
function display(a)
{
console.log(a);
var hours = Math.trunc(a/60);
var minutes = a % 60;
var one_day=1000*60*60*24
var days = Math.ceil(a/one_day)
var time = [hours,minutes,days];
return time;
}

我得到以下1天24小时15分钟,任何人都可以帮助我,如果它的新逻辑意味着我会改变它,提前谢谢

最佳答案

使用 momentjs,您可以:

这是一个实时示例:

var startdatetime = "2017-06-09T07:00:01.000Z";
var enddatetime = "2017-06-10T09:00:00.000Z";
// Parse input
var mStart = moment.utc(startdatetime);
var mEnd = moment.utc(enddatetime);
// Calculate difference and create duration
var dur = moment.duration( mEnd.diff(mStart) );
// Show the result
console.log(dur.days() + ' days ' + dur.hours() + ' hour ' + dur.minutes() + ' minutes');
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>

如果您愿意,可以使用moment-duration-format插件使用 format() 获得相同的结果持续时间的方法。这是一个工作示例:

var startdatetime = "2017-06-09T07:00:01.000Z";
var enddatetime = "2017-06-10T09:00:00.000Z";
// Parse input
var mStart = moment.utc(startdatetime);
var mEnd = moment.utc(enddatetime);
// Calculate difference and create duration
var dur = moment.duration( mEnd.diff(mStart) );
// Show the result
console.log(dur.format('d [day] h [hour] m [minutes]'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.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 - 如何从javascript中的两个日期获取天数和精确分钟数、精确小时数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44441262/

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