Корисним та гнучким способом форматування 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"
Формати дати та часу можна налаштувати за допомогою аргументу параметрів.
The Intl.DateTimeFormatОб'єкт є конструктором для об'єктів , які дозволяють мову чутливої дату і час форматування.
Синтаксис
new Intl.DateTimeFormat([locales[, options]])
Intl.DateTimeFormat.call(this[, locales[, options]])
Параметри
локалі
За бажанням. Рядок із тегом мови BCP 47 або масив таких рядків. Для загальної форми та інтерпретації аргументу локалів див. Сторінку 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".
година12
Чи використовувати 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".
Перевірте в Інтернеті
Детальніше