我如何互相添加两个时间变量?

时间:2014-03-27 09:33:23

标签: jquery variables add

我想互相添加两个时间变量。但输出不是我想要的。因为当我设置为例如:

starttimestatus = 13:00:00
endduur = 13:30:00

我的endtimestatus将是=> 13点13分三十秒

不知何故,它不会添加HH

  starttimestatus = $("#starttimestatus").val(),
 endduur = $("#endduur").val();
      endtimestatus = endduur + starttimestatus,

2 个答案:

答案 0 :(得分:0)

您需要将时间转换为秒,添加它们并格式化结果。

function toSeconds(s) {
  var p = s.split(':');
  return parseInt(p[0], 10) * 3600 + parseInt(p[1], 10) * 60 + parseInt(p[2], 10);
}

function fill(s, digits) {
  s = s.toString();
  while (s.length < digits) s = '0' + s;
  return s;
}

var sec = toSeconds(intime) + toSeconds(out);

var result =
  fill(Math.floor(sec / 3600), 2) + ':' +
  fill(Math.floor(sec / 60) % 60, 2) + ':' +
  fill(sec % 60, 2);

请参阅fiddle for Demo

答案 1 :(得分:0)

您可以一起添加时间

function goodTimes() {
    var arr = [];
    $.each(arguments, function() {
        $.each(this.split(':'), function(i) {
            arr[i] = arr[i] ? arr[i] + (+this) : +this;
        });
    })

    return arr.map(function(n) {
        return n < 10 ? '0'+n : n;
    }).join(':');
}

FIDDLE