在Javascript中添加HH:MM:SS字符串

在Javascript中添加HH:MM:SS字符串,javascript,string,time,add,Javascript,String,Time,Add,我想我自己无法解决这个问题。 假设我有一个时间,其字符串格式为HH:MM:SS ex.10:11:06,我想在其中添加另一个时间并将其作为字符串返回。例如,“10:11:06”+“11:00:01”将返回“21:11:07” 我浏览了这个网站,提出了一个解决方案,将其转换为秒数,然后将它们加在一起: function addTimes(start, end) { var a = start.split(":"); var seconds = (+a[0]) * 60 * 60 + (+a[1

我想我自己无法解决这个问题。 假设我有一个时间,其字符串格式为HH:MM:SS ex.
10:11:06
,我想在其中添加另一个时间并将其作为字符串返回。例如,
“10:11:06”+“11:00:01”将返回“21:11:07”

我浏览了这个网站,提出了一个解决方案,将其转换为秒数,然后将它们加在一起:

function addTimes(start, end) {
 var a = start.split(":");
 var seconds = (+a[0]) * 60 * 60 + (+a[1]) * 60 + (+a[2]); 
 var b = end.split(":");
 var seconds2 = (+b[0]) * 60 * 60 + (+b[1]) * 60 + (+b[2]); 

 var date = new Date(1970,0,1);
     date.setSeconds(seconds + seconds2);

 var c = date.toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/, "$1");
     return c;
     console.log(c);
}   
但是console.log C返回的日期无效。这仍然是一个字符串还是我做错了什么

编辑:(我很愚蠢)我在一个递归循环中使用了它,我用
var s=0初始化了sum变量而不是
var s=“00:00:00”

试试看

var c = date.getHours() + ":" + date.getMinutes() + ":" + date.getSeconds();
return c;
将日期对象转换为时间。

请尝试此操作

var start=“10:11:06”;
var end=“10:11:06”;
var a=start.split(“:”);
变量秒=(+a[0])*60*60+(+a[1])*60+(+a[2]);
var b=结束。拆分(“:”);
var seconds2=(+b[0])*60*60+(+b[1])*60+(+b[2]);
var日期=新日期(1970,0,1);
日期设置秒(秒+秒2);
var c=date.toTimeString().replace(/.*(\d{2}:\d{2}:\d{2})。*/,“$1”);

控制台日志(c)新日期(1970,0,1,+a[0]、+a[1]、+a[2])
在您发布的代码片段中,
console.log(c)将永远不会执行,因为您在调用之前从函数返回了
。我刚刚测试了这个函数,它适用于您提供的示例开始和结束时间(
10:11:06
11:00:01
),但如果
start
end
时间加起来超过
24
小时,它肯定会失败。@Titus我有一个控制台。登录外部检查该函数。谢谢,我刚意识到可能是我的另一个密码。