用JavaScript计算时间总和
我在mongodb中有记录,时间是字符串用JavaScript计算时间总和,javascript,node.js,mongodb,datetime,time,Javascript,Node.js,Mongodb,Datetime,Time,我在mongodb中有记录,时间是字符串 **Time** 00:10:40 00:40:10 01:10:20 00:43:40 00:42:40 00:30:40 00:54:10 00:47:40 00:50:40 01:05:40 00:45:40 00:51:40 00:36:40 如何计算整个时间的总和?您的时间字符串是否在数组中 您可以使用以下内容: var hours = 0; var minutes = 0; var seconds = 0; var s
**Time**
00:10:40
00:40:10
01:10:20
00:43:40
00:42:40
00:30:40
00:54:10
00:47:40
00:50:40
01:05:40
00:45:40
00:51:40
00:36:40
如何计算整个时间的总和?您的时间字符串是否在数组中 您可以使用以下内容:
var hours = 0;
var minutes = 0;
var seconds = 0;
var sum = '';
var myArray = ["01:40:40","03:50:50"];
var myFunction = function(){
for(var i in myArray){
hours += parseInt(myArray[i].substring(0, 2))
minutes += parseInt(myArray[i].substring(3, 5))
seconds += parseInt(myArray[i].substring(6))
}
if(seconds > 59){
minutes += parseInt(seconds / 60);
seconds = parseInt(seconds % 60);
}
if(minutes > 59){
hours += parseInt(minutes / 60);
minutes = parseInt(minutes % 60);
}
sum = hours + ":" + minutes + ":" + seconds;
console.log(sum);
}
myFunction();
如果您还有其他问题,请随时提问。到目前为止您尝试了什么?我在上述函数[00:02:00,0:2:0]中发现了一些错误,它给出了0:NaN:NaN
**This may also work :**
var time1 = "01:00:00";
var time2 = "00:30:00";
var time3 = "00:30:00";
var hour=0;
var minute=0;
var second=0;
var splitTime1= time1.split(':');
var splitTime2= time2.split(':');
var splitTime3= time3.split(':');
hour = parseInt(splitTime1[0])+parseInt(splitTime2[0])+parseInt(splitTime3[0]);
minute = parseInt(splitTime1[1])+parseInt(splitTime2[1])+parseInt(splitTime3[1]);
hour = hour + minute/60;
minute = minute%60;
second = parseInt(splitTime1[2])+parseInt(splitTime2[2])+parseInt(splitTime3[2]);
minute = minute + second/60;
second = second%60;
alert('sum of above time= '+hour+':'+minute+':'+second);