В javascript как изменить формат даты ниже

1

У меня есть формат даты 181221171403

18-year
12-month
21-day
17-hour
14-minute
03-second

Как конвертировать формат ниже.

December 21st 2018, 17:14:03.000
Теги:
datetime

5 ответов

1

Вы можете использовать moment.js для этой работы. Больше в момент документации

var stringDate = '181221171403';
var date = moment(stringDate, 'YYMMDDHHmmss');
console.log(date.format('MMMM Do YYYY, HH:mm:ss'));
<script src="https://momentjs.com/downloads/moment.js"></script>
1

var str = '181221171403';
var dateArr = str.match(/.{1,2}/g); // given ["18", "12", "21", "17", "14", "03"]
var strDate = '20'+dateArr[0]+'-'+dateArr[1]+'-'+dateArr[2]+' '+dateArr[3]+':'+dateArr[4]+':'+dateArr[5];
var d = new Date(strDate);

const monthNames = ["January", "February", "March", "April", "May", "June",
  "July", "August", "September", "October", "November", "December"
];

// December 21st 2018, 17:14:03.000
const res = monthNames[d.getMonth()]+' '+d.getDate()+' '+d.getFullYear()+' '+d.getFullYear()+' '+d.getHours()+':'+d.getMinutes()+':'+d.getSeconds()+'.000';
console.log(res);

И после вы можете сгенерировать дату в формате shouaite, используя объект V Date of JavaScript

0

Это должно работать для вас в ванильном JavaScript:

const myDate = new Date(181221171403);
const locale = "en-us";
const options = {  
  weekday: 'long',
  year: 'numeric',
  month: 'short',
  day: 'numeric',
  hour: '2-digit',
  minute: '2-digit'
};
const formatted = myDate.toLocaleString(locale, options);
console.log(formatted);
0

Объект Date может быть инициализирован с отметкой времени следующим образом:

const date = new Date(181221171403);

и это даст вам следующий результат

Mon Sep 29 1975 13:12:51 GMT+0200
-3

Вы можете создать функцию, которая будет отображать текущую дату в красивом строковом формате, а затем создать функцию с часами и объединить эти две функции или просто создать ее в одной функции. Вот пример того, как создать функцию, которая отображает текущую дату в красивом строковом формате.

function getDate() {
    var date = new Date();
    var year = date.getFullYear();
    var month = date.getMonth() + 1;
    var day = date.getDay();

    var res = 'Today is ${year}-${month}-${day}';
    return res;
}

var x = getDate();
console.log(x);

Ещё вопросы

Сообщество Overcoder
Наверх
Меню