Преобразование длительности в секундах в часы, минуты и секунды на JavaScript

15.10.2011 16:43 / Артём Волк / 588 просмотров / ...

Интервалы, которые определены в секундах (например, длительность видео- или аудио-ролика) удобно представлять в формате 00:00:00 (часы:минуты:секунды) для лучшей читабельности.

Ниже представлен JavaScript-вариант уже упоминавшейся функции для ActionScript

function toFormattedTime(input, withHours, roundSeconds)
{
	if (roundSeconds)
	{
		input = Math.ceil(input); // На случай, если дробное
	}

	var hoursString = '00';
	var minutesString = '00';
	var secondsString = '00';
	var hours = 0;
	var minutes = 0;
	var seconds = 0;

	hours = Math.floor(input / (60 * 60));
	input = input % (60 * 60);

	minutes = Math.floor(input / 60);
	input = input % 60;

	seconds = input;

	hoursString = (hours >= 10) ? hours.toString() : '0' + hours.toString();
	minutesString = (minutes >= 10) ? minutes.toString() : '0' + minutes.toString();
	secondsString = (seconds >= 10) ? seconds.toString() : '0' + seconds.toString();

	return ((withHours) ? hoursString + ':' : '') + minutesString + ':' + secondsString;
}