Изменить на формат отметки времени в JavaScript - PullRequest
0 голосов
/ 01 апреля 2020

Я получаю дату и время из БД, которая хранится как «03-MAR-20 02.46.13.716000000 PM» (метка времени) и поступает в интерфейс пользователя в формате «1583226973724». Я хочу преобразовать это обратно, как показано в БД.

Спасибо

1 Ответ

0 голосов
/ 01 апреля 2020

Кажется, что нет конкретного c способа сделать это легко, однако, после прочтения официальной Oracle документации: https://docs.oracle.com/cd/B19306_01/server.102/b14225/ch4datetime.htm, решение этой проблемы будет следующим (учитывая часовой пояс по умолчанию и 24-часовой формат времени):

var date = new Date(1583226973724);
var str = (date+'').split(' ');
var month = ["January","February","March","April","May", "June","July","August","September","October","November","December"];
var day = str[2];
var month = month[date.getMonth()];
var year = str[3];
var hours = date.getHours();
var min = date.getMinutes();
var sec = date.getSeconds();
var milsec = date.getMilliseconds();
var result = (
     day+'-'+month.substring(0,3).toUpperCase()+'-'+year.substring(2,4)+' '+
     hours+'.'+min+'.'+sec+'.'+milsec+' '+
     ((hours>=12)?"PM":"AM")
);
console.log(result);
...