Javascript 如何计算总时间

Javascript 如何计算总时间,javascript,arrays,math,Javascript,Arrays,Math,我正在开发一个基于web的应用程序来捕获视频播放列表的总时间。我的主要问题是我不知道如何从数组计算总时间,例如:30:00+30:00=01:00。时间单位是mm:ss,我需要的输出单位是hh:mm var time = ["13:24", "4:28", "7:29"]; for (k in time){ add(time[k].split(":")); } 这是一个很好的例子 保持上述循环,将其分为小时和分钟,并根据下面的dt.setHours和Minutes分配 这将更有帮助

我正在开发一个基于web的应用程序来捕获视频播放列表的总时间。我的主要问题是我不知道如何从数组计算总时间,例如:30:00+30:00=01:00。时间单位是mm:ss,我需要的输出单位是hh:mm

var time = ["13:24", "4:28", "7:29"];

for (k in time){
    add(time[k].split(":"));
}

这是一个很好的例子

保持上述循环,将其分为小时和分钟,并根据下面的dt.setHours和Minutes分配

这将更有帮助

var dt=新日期(0,0,0,0,0,0);
dt.setHours(dt.getHours()+1);//1:00开始
dt.setMinutes(dt.getMinutes()+30);//第一次是00:30
dt.setMinutes(dt.getMinutes()+25);//第二天00:30
显示(dt.getHours()+“:”+dt.getMinutes());
功能显示(msg){
var p=document.createElement(“p”);
p、 innerHTML=字符串(msg);
文件.正文.附件(p);

}
一个你可以做的例子

//假设num始终为正
函数零位(num){
var str=字符串(num);
如果(str.length<2){
返回'0'+str;
}
返回str;
}
//假设您的时间字符串始终为(H*:)(m{0,2}:)s{0,2},并且从不为负
函数totalTimeString(TimeString){
var totals=时间串.reduce(函数(a,时间串){
var parts=timeString.split(“:”);
无功温度;
如果(零件长度>0){
温度=数量(parts.pop())+a.seconds;
a、 秒=温度%60;
如果(零件长度>0){
温度=(数字(parts.pop())+a.minutes)+(温度-a.seconds)/60);
a、 分钟=温度%60;
a、 小时=a.hours+((温度-a.minutes)/60);
如果(零件长度>0){
a、 小时数+=个数(parts.pop());
}
}
}
返回a;
}, {
小时:0,
分钟:0,
秒:0
});
//返回的字符串将是HH(H+):mm:ss
返回[
zeroPad(总计小时数),
zeroPad(总计分钟),
zeroPad(总计秒)
]。加入(“:”);
}
var result1=totalTimeString([
'13:24',
'4:28',
'7:29'
]);
console.log(result1);
var result2=totalTimeString([
'13:24:06',
'4:28:46',
'17:29:11'
]);

console.log(result2)你可能想研究一下时间长短我相信这些问题属于数学而不是编程我想用核心javascript来做这件事,而不使用任何jquery插件或libraryAn示例来提供你需要的信息。它从表而不是数组中获取时间,但在其他方面,它似乎就是您要寻找的。你的
add
函数做什么?OP说:
我需要在hh:mm中添加
谢谢!我错过了这一部分,但做同样的设置时间功能,这将工作!没什么大不了的。。。否定这个疯狂的…xotic750:谢谢你纠正我,希望它能起作用@Xotic750如何在代码中添加小时数?totalTimeString([“13:24:06”,“4:28:46”,“17:29:11]”)@akuljana见更新