2013-05-31 1 views
0

Я пытаюсь вывести динамическую цифру за считанные секунды: секунды, минуты, часы или дни в зависимости от общего количества.Формат времени (в секундах) относительно количества в JavaScript

Что было бы лучшим способом быстро форматировать такие секунды, как показано ниже?

33 seconds = 33 seconds 
92 seconds = 1.5 minutes 
6200 seconds = 1.7 hours 
180000 seconds = 2 days 
980010 seconds = 1.6 weeks 

Я надеялся, что есть библиотека jQuery, которая могла бы справиться с этим?

Любая помощь очень ценится.

+0

Благодарности Юхана - Это выглядит правильно, не удалось найти, что из щёток поиска Google. – Thomas

ответ

1

Функция ниже работает достаточно хорошо. Вы можете добавить некоторые условные операторы внутри функции, чтобы вернуть нужную строку. то есть только секунды, если все остальные значения ==0 и т.д.

function convertFromSeconds(seconds) 
{ 

var numdays = Math.floor(seconds/86400); 
var numhours = Math.floor((seconds % 86400)/3600); 
var numminutes = Math.floor(((seconds % 86400) % 3600)/60); 
var numseconds = ((seconds % 86400) % 3600) % 60; 

return numdays + " days " + numhours + " hours " + numminutes + " minutes " + numseconds + " seconds"; 

} 
+0

Это трюк, спасибо Марк. – Thomas

Смежные вопросы