【发布时间】:2016-02-11 10:08:34
【问题描述】:
我正在尝试为接下来的 90 天创建一系列日期,过滤后仅显示特定日期。因此,例如,我想要一个列表,列出未来 90 天内的所有星期二。
到目前为止,我试图简单地生成一个包含未来 90 天所有日期的数组,但它不起作用。这就是我所拥有的:
var date = new Date();
var chckDates = [];
for (i = 0; i < 90; i++) {
date.setDate(date.getDate() + i);
var dmy = date.getDate() + "-" + (date.getMonth()+1) + "-" + date.getFullYear();
chckDates.push(dmy);
}
console.log(chckDates);
从外观上看,该数组每次都会增加 n+1。例如,它增加了 1 天,然后又增加了 1 天,然后是 2 天,然后是 3... 所以我得到的日期是:11 日、12 日、14 日、17 日等。
我的两个问题是:
- 如何简单地让它返回未来 90 天内所有即将到来的日期的简单列表。
- 然后我如何过滤该数组以排除所有除了任何星期二?
谢谢
【问题讨论】:
-
简单的列表是什么意思?
-
每个循环只需添加 1 个
-
为什么要创建 90 个日期然后过滤掉其中的 86%?只需从星期二开始(下一个、上一个、最近的,等等)并重复添加 7 天。
标签: javascript date