Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.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在Date类中自动增加年份_Javascript - Fatal编程技术网

Javascript在Date类中自动增加年份

Javascript在Date类中自动增加年份,javascript,Javascript,因此,我正在编写一个Javascript日历,以反映当前月份、上个月的最后几天以及下个月的前几天。我遇到了一个终生无法解决的问题 我有以下几点 var today = new Date(); var lastMonthDays = new Date(today.getFullYear(), today.getMonth() - 1, 0).getDate(); 这应该分别返回上个月的最后一天,但它给我的值是31,代表31天,然而,在4月份只有30天。所以我最好的猜测是它给了我当前月份的天数。

因此,我正在编写一个Javascript日历,以反映当前月份、上个月的最后几天以及下个月的前几天。我遇到了一个终生无法解决的问题

我有以下几点

var today = new Date();
var lastMonthDays =  new Date(today.getFullYear(), today.getMonth() - 1, 0).getDate();
这应该分别返回上个月的最后一天,但它给我的值是31,代表31天,然而,在4月份只有30天。所以我最好的猜测是它给了我当前月份的天数。这不是应该给我30分吗?我在网上看了其他示例,从它的外观来看,我现在所用的应该很好。

today.getMonth()给出了一个索引为零的月份。i、 e

一月零日,, 2月1日, 3月2日,

因此,您不需要使用-1来获取上一个月的数据

var today = new Date();
var lastMonthDays =  new Date(today.getFullYear(), today.getMonth(), 0).getDate();
getMonth()给出了一个索引为零的月份。i、 e

一月零日,, 2月1日, 3月2日,

因此,您不需要使用-1来获取上一个月的数据

var today = new Date();
var lastMonthDays =  new Date(today.getFullYear(), today.getMonth(), 0).getDate();

不,它给你31天,因为三月有31天。试试这个:

var lastMonthDays =  new Date(today.getFullYear(), today.getMonth(), 0).getDate();

“月日”字段中的0实际上表示“本月1日前一天”。

否,它给您31天,因为三月有31天。试试这个:

var lastMonthDays =  new Date(today.getFullYear(), today.getMonth(), 0).getDate();

“月日”字段中的0实际上意味着“本月1日的前一天”。

您不需要减去1是正确的,但这是因为以1为基础的月日,而不是以0为基础的月份。您是对的-我忘了您也将该月作为零索引月输入(显然!),因此索引没有任何相关性。你的答案是正确的。关于不需要减去1,你是对的,但这是因为以1为基础的月份,而不是以0为基础的月份。你是对的-我忘了你也将月份作为零索引月份输入(显然!),所以索引没有相关性。你的答案是正确的。这是有道理的。所以我的下一个问题是,我如何在最后一天得到这个月?现在,我正在使用同样的代码来得到这个月的最后,现在我看到它是不正确的。我该怎么做
新日期(today.getFullYear(),today.getMonth()+,0.getDate()是的,只需获取下个月的第0天(
today.getMonth()+1
)。好的。这是有道理的。所以我的下一个问题是,我如何在最后一天得到这个月?现在,我正在使用同样的代码来得到这个月的最后,现在我看到它是不正确的。我该怎么做
新日期(today.getFullYear(),today.getMonth()+,0.getDate()是的,只需获取下个月的第0天(
today.getMonth()+1
)。