Вопрос по javascript – неожиданное поведение даты в JavaScript

2

У меня есть следующий код:

var newDate=new Date('05/22/2012');
var month=newDate.getMonth();
var day=newDate.getDate()+(-2);
var year=newDate.getYear();
document.write(month+'/'+day+'/'+year);

Я ожидал, что он вернется «20.05.2012». но вместо этого он возвращает «04/20/2012»;

Это не имеет смысла для меня - может ли кто-нибудь помочь мне понять, что происходит и как получить правильный ответ?

Спасибо за ваше внимание!

Ваш Ответ

3   ответа
-1
Error: User Rate Limit Exceeded
6

.getMonth() Начинается с нуля. Январь соответствует 0, февраль - 1 и т. Д.

На момент этого вопроса, месяц май, и, следовательно,.getMonth() возвращается4.

Ты хочешь.getMonth() + 1.

Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded jlisham
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
8

.getMonth() Начинается с нуля. как в0=January а также11=December

пытаться

var month=newDate.getMonth() + 1;

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