Полезный и гибкий способ форматирования DateTimes в JavaScript Intl.DateTimeFormat:
var date = new Date();
var options = { year: 'numeric', month: 'short', day: '2-digit'};
var _resultDate = new Intl.DateTimeFormat('en-GB', options).format(date);
// The _resultDate is: "12 Oct 2017"
// Replace all spaces with - and then log it.
console.log(_resultDate.replace(/ /g,'-'));
Результат "12-Oct-2017"
Форматы даты и времени можно настроить с помощью аргумента параметров.
Intl.DateTimeFormatОбъект является конструктором для объектов , которые позволяют язык чувствительной дату и время форматирования.
Синтаксис
new Intl.DateTimeFormat([locales[, options]])
Intl.DateTimeFormat.call(this[, locales[, options]])
параметры
локали
Необязательный. Строка с языковым тегом BCP 47 или массив таких строк. Для общей формы и интерпретации аргумента locales см. Страницу Intl. Разрешены следующие ключи расширения Unicode:
nu
Numbering system. Possible values include: "arab", "arabext", "bali", "beng", "deva", "fullwide", "gujr", "guru", "hanidec", "khmr", "knda", "laoo", "latn", "limb", "mlym", "mong", "mymr", "orya", "tamldec", "telu", "thai", "tibt".
ca
Calendar. Possible values include: "buddhist", "chinese", "coptic", "ethioaa", "ethiopic", "gregory", "hebrew", "indian", "islamic", "islamicc", "iso8601", "japanese", "persian", "roc".
Опции
Необязательный. Объект с некоторыми или всеми из следующих свойств:
localeMatcher
Алгоритм сопоставления локали для использования. Возможные значения "lookup"и "best fit"; по умолчанию это "best fit". Информацию об этой опции смотрите на странице Intl.
часовой пояс
Часовой пояс для использования. Единственное значение, которое реализации должны распознавать, это "UTC"; по умолчанию используется часовой пояс по умолчанию. Реализации могут также распознавать имена часовых поясов базы данных времени IANA зоны, такие как "Asia/Shanghai", "Asia/Kolkata","America/New_York" .
hour12
Использовать ли 12-часовое время (в отличие от 24-часового). Возможные значения trueи false; значение по умолчанию зависит от локали.
formatMatcher
Алгоритм сопоставления формата для использования. Возможные значения "basic"и "best fit"; по умолчанию"best fit" . См. Следующие параграфы для получения информации об использовании этого свойства.
Следующие свойства описывают компоненты даты и времени для использования в форматированном выводе и их требуемые представления. Реализации должны поддерживать как минимум следующие подмножества:
weekday, year, month, day, hour, minute, second
weekday, year, month, day
year, month, day
year, month
month, day
hour, minute, second
hour, minute
Реализации могут поддерживать другие подмножества, и запросы будут согласовываться со всеми доступными комбинациями подмножеств-представлений, чтобы найти наилучшее совпадение. Для этого согласования доступны два алгоритма, которые выбираются свойством formatMatcher."basic" алгоритм и зависящий от реализации алгоритм «наилучшего соответствия».
будний день
Представление дня недели. Возможные значения "narrow", "short", "long".
эпоха
Представление эпохи. Возможные значения "narrow", "short", "long".
год
Представление года. Возможные значения "numeric", "2-digit".
месяц
Представление месяца. Возможные значения "numeric", "2-digit", "narrow", "short", "long".
день
Представление дня. Возможные значения "numeric", "2-digit".
час
Представление часа. Возможные значения "numeric", "2-digit".
минут
Представление о минуте. Возможные значения "numeric", "2-digit".
второй
Представление второе. Возможные значения "numeric", "2-digit".
TimeZoneName
Представление названия часового пояса. Возможные значения "short", "long". Значение по умолчанию для каждого свойства компонента даты и времени не определено, но если все свойства компонента не определены, то предполагается, что год, месяц и день равны "numeric".
Проверить онлайн
Подробнее