Вопрос по date, transformation, date-conversion, javascript, epoch – Как я могу преобразовать дату в Epoch в «Y-m-d H: i: s» в Javascript?

15

Как я могу конвертировать следующую дату в эпоху:

1293683278

на следующую читаемую дату:

2010-06-23 09:57:58

используя Javascript?

Спасибо!

Ваш Ответ

4   ответа
0

Код:

var timestamp = 1293683278;
var d = new Date(timestamp*1000);
alert(
    d.getFullYear() + "-" + 
    ("00" + (d.getMonth() + 1)).slice(-2) + "-" + 
    ("00" + d.getDate()).slice(-2) + " " + 
    ("00" + d.getHours()).slice(-2) + ":" + 
    ("00" + d.getMinutes()).slice(-2) + ":" + 
    ("00" + d.getSeconds()).slice(-2)
);

Формат:YYYY-MM-DD HH:II:SS

Результат:2010-12-30 07:57:58

Демо-версия:https://jsfiddle.net/NabiKAZ/9ycovfxt/

Примечание: для текущего времени просто используйте:var d = new Date(); вместо.

25
var timestamp = 1293683278;
var date = new Date(timestamp*1000);

var year = date.getFullYear();
var month = date.getMonth() + 1;
var day = date.getDate();
var hours = date.getHours();
var minutes = date.getMinutes();
var seconds = date.getSeconds();

alert(year + "-" + month + "-" + day + " " + hours + ":" + minutes + ":" + seconds);

Для получения дополнительной информации см. Документацию по дате.

По-другому:

var timestamp = 1293683278;
var date = new Date(timestamp*1000);
var iso = date.toISOString().match(/(\d{4}\-\d{2}\-\d{2})T(\d{2}:\d{2}:\d{2})/)
alert(iso[1] + ' ' + iso[2]);
javascript работает только после нескольких поисков в Google, то есть :)
Как получить формат, например 20130327, используя совпадение строки ISO для даты 2013-03-27?
Спасибо! странно, когда я удаляю & quot; * 1000 & quot; это работает, но в противном случае это дает мне несколько случайных чисел ..? James Cazzetta
Дата в JavaScript работает с микросекундами. Вы уверены, что ваши метки времени имеют ровно 10 цифр?
пытатьсяiso[1].replace(/-/g, '') + ' ' + iso[2]
12

Ты можешь использоватьmoment.js за это.

moment.unix(1293683278).format('YYYY-MM-DD HH:mm:ss');
0

/* Get timestamp */
var timestamp = 1293683278;
document..innerHTML = "Timestamp: " + timestamp;

/* Get milisecond from timestamp */
var milisecond = 1293683278 * 1000;    
document.querySelector("#milisecond").innerHTML = "Milisecond: " + milisecond;
  
/* Separate milisecond */
var datetime = new Date(milisecond);

var year    = datetime.getFullYear();
var month   = datetime.getMonth() + 1; // (0-11)
var date    = datetime.getDate();
var hour    = datetime.getHours();
var minute  = datetime.getMinutes();
var second  = datetime.getSeconds();

document.querySelector("#datetime").innerHTML = "Datetime: " + 
  year + "-" + addZero(month) + "-" + addZero(date) + " " + 
  addZero(hour) + ":" + addZero(minute) + ":" + addZero(second);      

// Add 0 if argument < 10
function addZero(i) {
  if (i < 10) {
    i = "0" + i
  };  
  return i;
}
<p id="timestamp"><p>
<p id="milisecond"><p>
<p id="datetime"><p>

Похожие вопросы