Javascript计算时间,包括过夜

时间:2015-09-03 07:59:44

标签: javascript html

我已经创建了用于计算2分钟时间的代码,这些代码会导致分钟数。 如果没有隔夜时间(例如:10:00 - 12:0014:00 - 16:00),当我填充23:00和{{ 1}}(晚上11点到凌晨1点),它返回减去并向后计数。您可以在下面的代码段中看到我的代码。

任何人都知道如果一夜之间如何正常计算?或者,如果没有约会,那就不可能了?



01:00

function parseTime(s) {
    var c = s.split(':');
    return (parseInt(c[0]) * 60) + parseInt(c[1]);
}
function getTotalMin(x)
{
    var awal = document.getElementById("awaljkab").value;
    var akhir = document.getElementById("akhirjkab").value;
    var selisih = parseTime(akhir) - parseTime(awal);
    x.value = String(selisih);
}




2 个答案:

答案 0 :(得分:2)

在计算selisih之前,您应该检查第二小时是否小于第一小时:

if (akhir < awal) akhir += 24 * 60;

这样可以确保akhir代表第二天。之后,您可以按照您的方式计算selih

答案 1 :(得分:1)

如果小于第一个值,您可以简单地将24小时添加到第二个值

var to = parseTime(akhir);
var from = parseTime(awal);
var selisih;
if (to < from)
{
    selisih = 24*60 + to - from;
} else {
    selisih = to - from;
}

http://jsfiddle.net/Lse3sk44/1/