获取具有自定义间隔的两个日期之间的日期数组



我有这些数据:

const start = "29.09.2021";
const end = "29.10.2021";
const interval = "days"; //also: "month", "week", "year"
const intervalCount = 3;

如何获取存在于startend之间的日期数组,其间隔为:==;days&;和intervalCount == 3,则其他日期应该是02.10,05.10,08.10,11.10等,但interval也可以是"月", "周"one_answers"年"所以我必须根据动态参数

来计算我甚至不知道如何开始,感谢任何帮助!

这可以使用这里找到的Date对象来完成

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date

您可以创建一个函数,如

function getDates(startDateString, stopDateString, interval){
var dates = [];
var start = new Date(startDateString);
var stop = new Date(stopDateString);
while (start < stop) {
dates.push (start.toJSON());
start.setDate(start.getDate() + interval);
}
return dates;
}

然后你可以通过调用

来运行这个函数
dateArray = getDates("09-29-2021", "10-29-2021", 1)

它涵盖了一天的迭代。一个星期只是7天的间隔。

dateArray = getDates("09-29-2021", "10-29-2021", 7)

移动月份进入边缘情况,可以通过基于您的用例的条件来处理(例如,如果日期是1月31日,那么一个月的跳跃应该带您到3月3日还是2月28日/29日?)

最新更新