作者:廖蓉以 | 来源:互联网 | 2023-09-07 21:11
我想将今天之前的所有 90 天作为一个数组。我在 StackOverflow 或 Google 中找不到任何解决方案。
const now = new Date();
const daysBefore = now.setDate(priorDate.getDate() - 90);
我的预期结果是今天前 90 天的数组:
const days = [
'2021-06-03T05:45:36.685Z',
'2021-06-02T05:45:36.685Z',
'2021-06-01T05:45:36.685Z',
'2021-05-30T05:45:36.685Z',
...
]
回答
通过创建一个长度为 90 的新数组并将每个条目映射到一个现在减去索引天数的新日期来创建一个日期数组
const now = new Date()
const length = 90
const days = Array.from({ length }, (_, days) => {
let day = new Date(now) // clone "now"
day.setDate(now.getDate() - days) // change the date
return day
})
console.log(days)
这将创建Date
从现在开始并返回 90 天(降序)的实例数组。
也可以看看 Array.from()