Как отформатировать дату в правильном формате в JavaScript - PullRequest
1 голос
/ 03 декабря 2011

Я работаю над JavaScript и застрял в небольшой проблеме.

Я получаю эту дату в ответе JSON 1322919399447-0500

и хочу отформатировать ее следующим образом: 6:50 PM, Dec 3rd 2011.

Ответы [ 4 ]

1 голос
/ 03 декабря 2011

Это похожая функция форматирования даты, которую я создал и которая использует те же флаги, что и функция даты в PHP.

PHP функция даты в Javascript

1 голос
/ 03 декабря 2011

Я не уверен, что это лучший способ (я уверен, что это не так, на самом деле), но, по сути, вы можете превратить эту строку даты в объект js Date, а затем вытащить части для манипулирования, как считаете нужным:

var dateThing = new Date(1322919399447-0500);
dateThing.getFullYear(); // 2011
dateThing.getDay(); // 6
dateThing.getDate(); // 3
dateThing.getMonth(); // 11
dateThing.getHours(); // 8 (test for anything over 12, that indicates PM)
dateThing.getMinutes(); // 36

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

1 голос
/ 03 декабря 2011

Здесь - фрагмент кода с вашим примером ввода. Он использует скрипт , связанный с Zoidberg .

Этот код возвращает отформатированную дату UTC. Если вы хотите указать локальную дату, удалите UTC: из оператора return.

function convertTime(dateString) {
  // get ms part from the string
  var milis = +dateString.substring(0, 13);
  // get timezone part as "# of hours from UTC", e.g. "-0500" -> -5
  var offset = +dateString.substring(13, 16);
  // move the time for "offset" number of hours (to UTC time)
  var date = new Date(milis - offset * 3600000);
  // using http://stevenlevithan.com/assets/misc/date.format.js
  return date.format("UTC:h:MM TT, mmm dS yyyy");
}

РЕДАКТИРОВАТЬ : изменено + offset * на - offset *, поскольку мы хотим нормализовать к UTC.

1 голос
/ 03 декабря 2011

Я использовал этот удобный маленький аддон формата даты , и он работал очень хорошо для меня.Даже позаботился о досадных причудах интернет-исследователя с месяцем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...