2014-02-13 5 views
-1

Как отформатировать следующее в формате «mm/dd/yyyy h: mm: ss» в javascript?Формат даты/даты (-62135571600000)/

/Date(-62135571600000)/ 
+0

Возможный дубликат [Как отформатировать дату JavaScript] (http://stackoverflow.com/questions/3552461/how-to-format-a-javascript-date) –

ответ

1

В моем текущем часовом поясе:

new Date(-62135571600000); //=> Mon Jan 01 1 02:00:00 GMT-0500 (Eastern Standard Time) 

Это то, что вы ищете? Таким образом, вы можете легко вытащить свойство даты, которые вы хотите от этого объекта, чтобы отформатировать его, как вам нравится ...

1
// create a new date object from the timestamp... 
var p = (new Date(-62135571600000)).toISOString().split(/\D+/) 
// format the date 
var formatted = [p[1],p[2],p[0]].join("/")+" "+[p[3],p[4],p[5]].join(":") 
// check it... 
alert(formatted) 

(new Date(-62135571600000)) возвращает объект даты, который при выводе в виде строки выглядит ... Mon Jan 01 1 07:00:00 GMT+0000 (GMT). Внутри javascript понимает это как дату. Затем мы конвертируем его .toISOString(), поэтому формат больше похож на ... 0001-01-01T07:00:00.000Z - который является стандартным форматом даты ISO. Затем мы разделим его на массив любыми нецифровыми символами с использованием regex (.split(/\D+/)), который дает нам что-то вроде ... ["0001", "01", "01", "07", "00", "00", "000", ""]. Наконец, мы присваиваем это переменной ... var p = ....

Теперь у нас есть детали даты в массиве p, мы можем собрать их по своему усмотрению. Во-первых, соединяя части 1, 2 и 0 (0 - год, 1 - месяц, 2 - день) со слэшами ([p[1],p[2],p[0]].join("/")), давая 0001-01-01. Затем добавим пробел ...+" "+... и присоединитесь вместе ... [p[3],p[4],p[5]].join(":"). Назначьте результат переменной ... var formatted = ..., и мы будем рады!

Смежные вопросы