Javascript se convertissant en secondes en minutes

Jusqu'à présent, j'ai pu trouver la somme des magasins min et sec en ordre

var time = ["13:24", "4:28", "7:29"]; var min = 0; var sec = 0; for (k in time){ min += +time[k].split(":")[0]; sec += +time[k].split(":")[1]; } var rem = sec % 60; min += rem; alert(min+'-'+sec); //25-81 

Je le souhaite 25-21

Je pense que le ou / p souhaité est 25-21

 var time = ["13:24", "4:28", "7:29"]; var min = 0; var sec = 0; var minsec = time.forEach(function(time) { var parts = time.split(":") min += +parts[0]; sec += +parts[1]; }); //Add the whole minutes from the seconds ie if seconds is 130 then 2 minuste to be added to min min += Math.floor(sec / 60); //then the rest 10 secs to be added to sec sec = sec % 60; alert(min + '-' + sec); 

Votre somme est fausse. Vous ajoutez le module de sec à min . Cela signifie que si vous étiez sur 59 secondes, vous ajouteriez 59 minutes à votre somme.

Au lieu de cela, vous devez ajouter la division de sec et définir sec au module:

 min += Math.floor(sec / 60); sec %= 60; 

De cette façon, 69 secondes se traduiraient à 1 minute et 9 secondes, alors que votre code actuel calculerait 9 minutes et 69 secondes.