Формат DateTime с использованием Intl в дате возврата es-AR без am/pmJavascript

Форум по Javascript
Anonymous
Формат DateTime с использованием Intl в дате возврата es-AR без am/pm

Сообщение Anonymous »

Intl.DateTimeFormat ведет себя очень странно в случае локального значения 'es-AR', когда я пытаюсь отформатировать дату, например:

Код: Выделить всё

    const date = Date.UTC(2012, 1, 2, 14, 5, 42);
let format: Intl.DateTimeFormatOptions = {
year: 'numeric',
month: 'numeric',
day: 'numeric',
hour: 'numeric',
minute: 'numeric',
second: 'numeric',
timeZone: 'UTC',
}

let result = Intl.DateTimeFormat('es-AR', format).format(date);
Я получаю дату 02.02.2012, 02:05:42
Но когда я использую этот формат, параметры:

Код: Выделить всё

let format: Intl.DateTimeFormatOptions = {
year: 'numeric',
month: 'numeric',
day: 'numeric',
hour: 'numeric',
minute: 'numeric',
second: '2-digit',
timeZone: 'UTC',
}
Я получаю
02.02.2012, 14:05:42 с. м.
Почему это действует так странно?
Почему я не получаю AM/PM в первом случае?
Что мне делать, чтобы получить AM/PM (мой код должен показывать am/pm, если текущее местное время - 12 часов, но не показывать его, если мы используем 24 часа)
Спасибо

Подробнее здесь: https://stackoverflow.com/questions/793 ... hout-am-pm

Вернуться в «Javascript»