Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么2013年12月31日上个月是2013年1月12日?_Javascript_Date - Fatal编程技术网

Javascript 为什么2013年12月31日上个月是2013年1月12日?

Javascript 为什么2013年12月31日上个月是2013年1月12日?,javascript,date,Javascript,Date,设定日期: var a = new Date('2013.12.31'); 输出: Tue Dec 31 2013 00:00:00 GMT+0800 (China Standard Time) 修改日期: a.setMonth(a.getMonth()-1); 修改输出: Sun Dec 01 2013 00:00:00 GMT+0800 (China Standard Time) 30天包括9月、4月、6月和11月。从12月31日的月份部分减去1得到11月31日。因为11月只有30天

设定日期:

var a = new Date('2013.12.31');
输出:

Tue Dec 31 2013 00:00:00 GMT+0800 (China Standard Time)
修改日期:

a.setMonth(a.getMonth()-1);
修改输出:

Sun Dec 01 2013 00:00:00 GMT+0800 (China Standard Time)

30天包括9月、4月、6月和11月。从12月31日的月份部分减去1得到11月31日。因为11月只有30天,所以多出来的一天就是12月。

我想是因为你没有把日期从
31
改为
30
,而且11月只有
30
天,所以11月31日===12月1日。@pickypg:大多数?我在上只看到3个弃用通知。还有吗?它没有为
get/setMonth
Woops发出通知,出于某种原因,我将其理解为
Java
。忽略我的评论那么,我该怎么做才能得到上个月的最后一天呢?设置日期(0)怎么样@EcoChan计算下个月的第一天并减去一天。