使用javascript或jquery计算持续时间(Time duration calculation using javascript or jquery)

编程入门 行业动态 更新时间:2024-10-07 06:48:42
使用javascript或jquery计算持续时间(Time duration calculation using javascript or jquery)

是否可以在javascript或jquery执行以下c#逻辑,代码将两小时之间的持续时间转换为小时,分钟和秒。持续时间20/01/2017 00:00:00至20/01/2017 02:20: 30将是26:20:30关于转换为hh:mm:ss格式小时数可以超过24小时,如果分钟数超过59,则应该增加小时数和秒数超过59小时应该增加到小时数。

public static string ToTimeFormat(bool includeSeconds = false) { var startDate = DateTime.parse("20/01/2017 00:00:00"; var endDate = DateTime.parse("20/01/2017 02:20:30"); var ts = endDate - startDate; var totalDaysToHours = ts.Days * 24; return string.Format("{0}:{1}", (ts.Hours + totalDaysToHours).ToString("0"), ts.Minutes.ToString("D2")) + (includeSeconds ? ":" + ts.Seconds.ToString("D2") : string.Empty); }

Is it possible to do the below c# logic in javascript or jquery, The code converts duration between two dates int hours,minutes and seconds.the duration 20/01/2017 00:00:00 to 20/01/2017 02:20:30 will be 26:20:30 This about converting to hh:mm:ss format hours can go beyond 24, if minutes are more than 59 it should add to hours and seconds more than 59 should add to hours.

public static string ToTimeFormat(bool includeSeconds = false) { var startDate = DateTime.parse("20/01/2017 00:00:00"; var endDate = DateTime.parse("20/01/2017 02:20:30"); var ts = endDate - startDate; var totalDaysToHours = ts.Days * 24; return string.Format("{0}:{1}", (ts.Hours + totalDaysToHours).ToString("0"), ts.Minutes.ToString("D2")) + (includeSeconds ? ":" + ts.Seconds.ToString("D2") : string.Empty); }

最满意答案

你可以在这里使用moment.js moment.min.js以下是代码

var startDate = "01/02/2016 00:00:00"; //MM/DD/YYYY HH:MM:SS format var endDate = "01/03/2016 01:30:30"; //MM/DD/YYYY HH:MM:SS format var diff = moment.duration(moment(endDate).diff(moment(startDate))); var formatedData=[diff.asHours().toFixed(0), diff.minutes(), diff.seconds()].join(':');

所以你的输出就像

26:30:30

UPDATE

var startDate = "01/02/2016 00:00:00".split(/\//); startDate= [ startDate[1], startDate[0], startDate[2] ].join('/'); // DD/MM/YYYY to MM/DD/YYYY var endDate = "01/03/2016 01:30:30".split(/\//); endDate = [ endDate[1], endDate[0], endDate[2] ].join('/'); // DD/MM/YYYY to MM/DD/YYYY var diff = moment.duration(moment(endDate).diff(moment(startDate))); var formatedData=[diff.asHours().toFixed(0), diff.minutes(),diff.seconds()].join(':');

You can use moment.js from here moment.min.js and below is the code

var startDate = "01/02/2016 00:00:00"; //MM/DD/YYYY HH:MM:SS format var endDate = "01/03/2016 01:30:30"; //MM/DD/YYYY HH:MM:SS format var diff = moment.duration(moment(endDate).diff(moment(startDate))); var formatedData=[diff.asHours().toFixed(0), diff.minutes(), diff.seconds()].join(':');

so your output will be like

26:30:30

UPDATE

var startDate = "01/02/2016 00:00:00".split(/\//); startDate= [ startDate[1], startDate[0], startDate[2] ].join('/'); // DD/MM/YYYY to MM/DD/YYYY var endDate = "01/03/2016 01:30:30".split(/\//); endDate = [ endDate[1], endDate[0], endDate[2] ].join('/'); // DD/MM/YYYY to MM/DD/YYYY var diff = moment.duration(moment(endDate).diff(moment(startDate))); var formatedData=[diff.asHours().toFixed(0), diff.minutes(),diff.seconds()].join(':');

更多推荐

本文发布于:2023-08-07 11:34:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1464059.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:持续时间   jquery   javascript   calculation   duration

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!