JS date () возвращает неверную дату - PullRequest
1 голос
/ 04 декабря 2011

Я пытаюсь отформатировать дату в Javascript, но команда date возвращает неправильную дату, если я не использую toUTCString(), который возвращает правильную дату, я пробовал разные способы присвоения даты Date() функция и функции get и getUTC для получения даты. Я также пробовал в разных браузерах (Chrome, Safari, FireFox), и что еще более запутанно, если я делаю это в инспекторе Chrome, то работает отлично. А я что-то упустил очевидное?

var d = new Date(1324141200000);

// return "Sat, 17 Dec 2011 17:00:00 GMT" - Correct!
alert(d.toUTCString());
// returns "6-11-2011" - Wrong! 
alert(d.getUTCDay() +'-'+ d.getUTCMonth() +'-'+ d.getUTCFullYear()); 

Ответы [ 4 ]

7 голосов
/ 04 декабря 2011

Функция getUTCDay () возвращает день недели. Месяцы нумеруются с нуля. Суббота - шестой день недели (по крайней мере в JavaScript), а 11 - 12-й месяц, считая с нуля.

Итак, все хорошо.

День месяца можно получить с помощью d.getUTCDate ().

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

Вместо getUTCDay, вы хотите getUTCDategetUTCMonth возвращает 0-11 (0 = январь). Раздел 15.9.1 спецификации может помочь, но язык очень напряженный.

1 голос
/ 04 декабря 2011
d.getUTCDay() // day of week

d.getUTCMonth()  // zero based index
0 голосов
/ 04 декабря 2011

Используйте функцию getFullYear (), чтобы получить год, функцию getMonth (), чтобы получить месяц, и функцию getDate (), чтобы получить день.

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