@Galdar
Web, JS, PHP, NGINX, Linux

Как преобразовать формат времени в вид 00:00:00?

Есть скрипт
var timeElem = document.getElementById('lb_timer_result'), 
					countdown= new Date(),
					responseTime 	= new Date(Date.now() + (2900*10));

					function startTime() {
						countdown.setTime(responseTime - Date.now());
						timeElem.innerHTML = countdown.getUTCMinutes() + ':' + countdown.getUTCSeconds() + ',' + countdown.getUTCMilliseconds();
						if(countdown.getUTCHours() > 0 || countdown.getUTCMinutes() > 0 || countdown.getUTCSeconds() > 0){
							requestAnimationFrame(startTime);
						}else{
							$('#but_click span').html('текст');
							$('#lb_timer_result').html('00:29,00');
						}
					}
					requestAnimationFrame(startTime);

который выводит обратный отсчет с 29 секунд, но вот в чем проблема он выдает в такой вид 00:29:893 > 00:9:803, а хотелось бы в 00:29:89 > 00:09:29. Смотрел функции в мануале countdown.getUTCSeconds() countdown.getUTCMilliseconds() как преобразовать в нужный формат, не нашёл, как решить задачку?
  • Вопрос задан
  • 72 просмотра
Решения вопроса 1
hzzzzl
@hzzzzl
// добавить спереди 0, если 0-9
countdown.getUTCSeconds() < 10 ? '0' + countdown.getUTCSeconds() : countdown.getUTCSeconds()


// "округлить"
String( countdown.getUTCMilliseconds() ).slice(0,2)
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@cython
В Date есть метод toLocaleTimeString, который и делает то, что вам нужно. Так же есть toLocaleDateString, который выводит дату, и toLocaleString, который их комбинирует в формате: дата, время.
var date = new Date()
alert(date.toLocaleTimeString())
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы