Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Работа с датой и временем (https://javascript.ru/forum/misc/76589-rabota-s-datojj-i-vremenem.html)

maxachtrepova29@gmail.com 24.01.2019 15:29

Работа с датой и временем
 
Помогите исправить код,пожалуйста...

Задание: Сделайте так, чтобы часы показывали текущее время (чтобы часы "ходили").
Создайте таймер (обратный отсчет заданного промежутка времени). Исправьте проблему
с ведущими нулями (не 0 часов, минут или секунд, а 00)

<div class="example">
<strong>Дата и время</strong>

<p>Сегодня: <strong><span id="date"></span></strong>
<p>Текущее время: <strong><span id="time"></span></strong>
<p>Секундомер: <strong><span id="stopwatch">00:00:00</span></strong>
<p>Таймер: <strong><span id="timerId">00:00:00</span></strong>

<p><input type="button" value="Старт" id="stopwatch_start">
<input type="button" value="Стоп" id="stopwatch_stop">

<script>
var month = [ 'января', 'февраля', 'марта', 'апреля', 'мая', 'июня',
'июля', 'августа', 'сентября', 'октября', 'ноября', 'декабря' ]

var days = [ 'воскресенье', 'понедельник', 'вторник', 'среда',
'четверг', 'пятница', 'суббота' ]

onload = function() {
var now = new Date();
date.innerHTML = now.getDate() + ' ' + month[ now.getMonth() ] + ' ' + now.getFullYear() + ' года, ' + days[ now.getDay() ];
time.innerHTML = now.getHours() + ':' + now.getMinutes() + ':' + now.getSeconds();
}

var timerId;
var start_ms;

stopwatch_start.onclick = function() {
start_ms = Date.now();
timerId = setInterval( stopwatch_update, 10 );
}
stopwatch_stop.onclick = function () {
clearInterval( timerId );
}

function stopwatch_update()
{
now_ms = Date.now();

delta = now_ms - start_ms;
delta = Math.floor( delta / 10 );
ms = delta % 100;

delta = Math.floor( delta / 100 );
sec = delta % 60;

min = Math.floor( delta / 60 );

stopwatch.innerHTML = min + ':' + sec + ':' + ms;
}

</script>
</div>

j0hnik 24.01.2019 19:31

min = min < 10 ? '0' + min : min;
sec = sec < 10 ? '0' + sec : sec;
ms = ms < 10 ? '0' + ms : ms;

добавьте перед выводом


Часовой пояс GMT +3, время: 16:21.