Сделать функцию для преобразования формата mm:ss
в секунды, и один, чтобы преобразовать секунды в формат hh:mm:ss
, конвертировать все значения в секундах, сложите их вместе, и форматировать результат:
function parseMS(s) {
var parts = s.split(':');
return parseInt(parts[0], 10) * 60 + parseInt(parts[1], 10);
}
function formatTwo(n) {
return (n < 10 ? '0' : '') + n.toString();
}
function formatHMS(s) {
var m = Math.floor(s/60);
s %= 60;
var h = Math.floor(m/60);
m %= 60;
return formatTwo(h) + ':' + formatTwo(m) + ':' + formatTwo(s);
}
var times = ['14:23', '11:08', '18:59'];
var sum = 0;
for (var i = 0; i < times.length; i++) sum += parseMS(times[i]);
var result = formatHMS(sum);
alert(result);
Demo: http://jsfiddle.net/u6B4g/
Что вы пробовали? Рассмотрите возможность поиска [в файле timecalc.js на странице _you_, связанной с] (http://www.unitarium.com/timecalc.js). Если вы застряли в попытке, то задайте здесь вопрос, но _show_ ваши усилия –
Храните (или вычисляйте) длину песни в чистые секунды (например, 63 с за 1:03), добавьте их и пересчитайте минуты (или часы) из результат. – Nero