在数组中的数据范围之间填充日期?

时间:2011-09-27 20:13:32

标签: javascript

我必须像这样的日期数组: [2011年6月13日,2011年7月15日,2011年7月18日,2011年8月13日] 我想要做的是填写日期数组之间的日期,所以如果在7月15日,2011年7月18日之间的任何日期之间缺少几天我想添加7/16 / 2011,7 / 17 / 2011年之间,有没有办法可以帮助做到这一点?

1 个答案:

答案 0 :(得分:7)

这应该适用于JavaScript。它基本上只是解散数组中间的任何日期,并生成第一个和最后一个项目之间的所有日期。

var dates = ["6/13/2011", "7/15/2011", "7/18/2011", "8/13/2011"];

var minDate = new Date(dates[0]).getTime(),
    maxDate = new Date(dates[dates.length - 1]).getTime();

var newDates = [],
    currentDate = minDate,
    d;

while (currentDate <= maxDate) {
    d = new Date(currentDate);
    newDates.push((d.getMonth() + 1) + '/' + d.getDate() + '/' + d.getFullYear());
    currentDate += (24 * 60 * 60 * 1000); // add one day
}

console.log(newDates);