Так я эту дату вернулся из API:Формат даты Выдает
"2014-08-07T00:00Z"
И результаты от new Date("2014-08-07T00:00Z")
Wed Aug 06 2014 20:00:00 GMT-0400 (EDT)
равного и .getDay() на эту дату дает мне 3.
Почему это происходит с 7-го по 6-е, а getDay возвращает 3?
В основном я пытаюсь вернуть дату возврата API на английский язык.
days[d.getDay()]+", "+months[d.getMonth()]+" "+getOrdinal(d.getDay())+" "+formatAMPM(d)
(ака "среда, 3 августа 8:00 вечера")
console.log(d,data[i].startDate, d.getDay());
//yields
// Wed Aug 06 2014 20:00:00 GMT-0400 (EDT) "2014-08-07T00:00Z" 3
days
только массив текстовых дней, как months
, getOrdinal
это функция, которая дает текст st
или nd
или rd
на день, и formatAMPM
довольно очевиден.
Вы можете использовать [Moment.js] (http://momentjs.com/), если вам нужна правильная обработка даты. Стандартная дата Js невелика. – Nit
Да, я знаю это, но я не чувствую, что для преобразования даты в строчную версию требуется целая библиотека. –
@SterlingArcher. Может показаться, что это не так сначала, но учитывайте часовые пояса (и их периодические обновления) и локализацию, плюс обратный случай (поворот локализованных дат возвращается в формат API). Момент, вероятно, стоит потянуть, или скоро. – ssube