javascript - 使用 JavaScript 计算时差

标签 javascript time

我有两个 HTML 输入框,需要在 JavaScript onBlur 中计算时间差(因为我需要实时)并将结果插入新的输入框。

格式示例:10:00 & 12:30 需要给我:02:30

谢谢!

最佳答案

这是一种可能的解决方案:

function diff(start, end) {
    start = start.split(":");
    end = end.split(":");
    var startDate = new Date(0, 0, 0, start[0], start[1], 0);
    var endDate = new Date(0, 0, 0, end[0], end[1], 0);
    var diff = endDate.getTime() - startDate.getTime();
    var hours = Math.floor(diff / 1000 / 60 / 60);
    diff -= hours * 1000 * 60 * 60;
    var minutes = Math.floor(diff / 1000 / 60);

    // If using time pickers with 24 hours format, add the below line get exact hours
    if (hours < 0)
       hours = hours + 24;

    return (hours <= 9 ? "0" : "") + hours + ":" + (minutes <= 9 ? "0" : "") + minutes;
}

演示: http://jsfiddle.net/KQQqp/

关于javascript - 使用 JavaScript 计算时差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10804042/

相关文章:

javascript - 矫枉过正?使用indexOf()来发现字符串的内容

Javascript:暂停/取消暂停 javascript 俄罗斯方 block 游戏

php - 锻炼平均时间

使用 lubridate 将持续时间或周期舍入到整分钟

javascript - Guacamole VNC 文件传输

javascript - 如何在横幅上添加和对齐按钮?

javascript - 错误的元素集中在 Chrome 中

python - 两个循环之间耗时

c# - 在 C# 中实现高分辨率 DateTime.UtcNow 的最佳方式?

java - 如何在单独的线程中运行任务特定的时间并返回结果?