@zatocnik

Как установить 24 часовой формат в скрипте?

Что прописать в скрипте, что бы был формат времени 24 часа.
В приведенном мною скрипте, время показывает в ноль GMT. Я с помощью кода прибавляю или убавляю часы, чтобы получить локальное время по всему миру. Но если например сейчас время по GMT 20:10, то прибавив к нему например время Макао +8 - получаю 28:10.
Как сделать чтобы он выводил, в данном примере, нужное время - 04:10

function zero_first_format(value)
    {
        if (value < 10)
        {
            value='0'+value;
        }
        return value;
    }
        function date_time()
    {
        var current_datetime = new Date();
        var day = zero_first_format(current_datetime.getDate());
        var month = zero_first_format(current_datetime.getMonth()+1);
        var year = current_datetime.getFullYear();
        var hours = zero_first_format(current_datetime.getUTCHours()+8);
        var minutes = zero_first_format(current_datetime.getMinutes());
        var seconds = zero_first_format(current_datetime.getSeconds());
        return day+"/"+month+"/"+year+" Ortszeit: "+hours+":"+minutes+":"+seconds;
    }
    setInterval(function () {
       document.getElementById('chicuta').innerHTML = date_time();
    }, 1000);
  • Вопрос задан
  • 45 просмотров
Решения вопроса 2
Kozack
@Kozack Куратор тега JavaScript
Thinking about a11y
Возмите текущее время
Оно уже локальное
Используйте Intl для форматирования
Ответ написан
Tim-A-2020
@Tim-A-2020 Куратор тега JavaScript
function date_time() {
    return new Intl.DateTimeFormat('en', {
        hour12: false,
        day: 'numeric',
        month: 'numeric',
        year: 'numeric',
        hour: 'numeric',
        minute: 'numeric',
        second: 'numeric',
        timeZone: 'Europe/Moscow'
    }).format(Date.now())
}
date_time(); // "12/29/2020, 08:03:23"
date_time().replace(',', ' Ortszeit:');// "12/29/2020 Ortszeit: 08:03:23"

Список timeZone: https://en.wikipedia.org/wiki/List_of_tz_database_...
Информация по Intl : https://learn.javascript.ru/intl
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
Artezio Нижний Новгород
от 130 000 до 180 000 ₽
Artezio Москва
от 160 000 до 220 000 ₽
Intspirit Краснодар
от 80 000 до 150 000 ₽
23 янв. 2021, в 18:06
5000 руб./за проект
23 янв. 2021, в 17:51
150000 руб./за проект
23 янв. 2021, в 17:34
10000 руб./за проект