在jQuery中添加Date对象的天数总是显示一个月内的错误天数

时间:2014-10-07 13:34:25

标签: jquery

我希望能够遍历Date对象,使用for循环添加单日。然而,当我循环并在每次迭代中添加单日do Date对象时,无论我尝试哪个月(甚至是2月),我都会在一个月内结束30天。我必须说jQuery不是我最强的语法,所以我期待你们。由于我项目中的实际问题,无论我选择哪个日期,我都需要在我的视图中显示30天。

如何每次迭代添加一天但仍保留每月的天数?

var date = new Date(2014, 10, 10);

for (var i = 0; i < 30; i++) {
    // do stuff with my date object ... abbreviated

    date.setDate(date.getDate() + 1);  
    //I thought this was enough, but october is showing only 30 days
    //Should I use another method when adding days?
}

2 个答案:

答案 0 :(得分:0)

那天的十一月。月份为0个碱基。

var date = new Date(2014, 10, 10);
console.log(date)
> Mon Nov 10 2014 00:00:00 GMT-0500 (EST) 

来自the docs

var theBigDay = new Date(1962, 6, 7); // 1962-07-07

答案 1 :(得分:-1)

您需要重新考虑有几个月有30天。如果您根据日历,这些月份有30天,9月,4月,6月和11月。剩下的几个月有31天,除了2月。此外,试着考虑闰年,其中2月将结束于29,如果不是,它将结束于28。

我希望这对你有所帮助。