В Date.toLocaleString () локаль "ja-JP" не может показывать час в двухзначном формате? - PullRequest
1 голос
/ 22 мая 2019

Такое поведение не возникает при использовании локали "en-US".

Кроме того, независимо от того, установлен ли час на «2-значный» или «числовой»,
выходные данные остаются одинаковыми для локалей "ja-JP" и "en-US".

Это ошибка? Есть ли обходной путь для отображения часа в 2-значном формате в этом формате?

гггг / мм / дд чч: мм: сс

function showDate() {
    var date = new Date('2019-05-22T00:37:36.37Z');

    var options = { year: 'numeric', day: '2-digit', month: '2-digit', 
                    hour: '2-digit', minute: '2-digit', second: '2-digit',
                    hour12: false };

    document.querySelector("#ja-jp").innerHTML = date.toLocaleString('ja-JP', options);
    document.querySelector("#en-us").innerHTML = date.toLocaleString('en-US', options);
}
window.onload = showDate;
<div id="ja-jp"></div>
<div id="en-us"></div>

Ответы [ 2 ]

0 голосов
/ 22 мая 2019

Мне не нравится этот обходной путь, поэтому я не собираюсь принимать это как ответ.
Но так как он работает, я просто положу его здесь.

function formatDate(date) {
    var year = date.getFullYear();
    var month = ("0" + (date.getMonth() + 1)).slice(-2);
    var day = ("0" + date.getDate()).slice(-2);

    var hour = ("0" + date.getHours()).slice(-2);
    var minute = ("0" + date.getMinutes()).slice(-2);
    var second = ("0" + date.getSeconds()).slice(-2);

    return year + "/" + month + "/" + day + " " + hour + ":" + minute + ":" + second;
}

Ссылка ссылка .

0 голосов
/ 22 мая 2019

Не уверен, что это может вам помочь, но взгляните на http://phrogz.net/JS/FormatDateTime_JS.txt

Очень хороший способ форматировать даты в JS.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...