生成从 x 日期到 y 日期的日期数组

问题描述 投票:0回答:2

对于日历,我需要生成从 2023-01-01 到 2023-01-15 的日期数组。我尝试使用循环生成数组,但我认为代码可能更简洁。

我希望 javascript 有一个

getDateArray(new Date(), new Date('2023-01-15'))
功能,但它没有。

javascript arrays date timespan
2个回答
0
投票

我提出了以下内容,但没有将其发布到其他任何地方的声誉。

可以使用第三个参数作为区间

function arrayDateRange(start, stop, step) {
    if (step < 1000) return [start, stop];
    return Array.from({ length: (stop - start) / step + 1 }, (value, index) => {
        return new Date(start.getTime() + index * step)
    });
}

arrayDateRange(new Date('2023-01-01'),new Date('2023-01-15'),(1000*60*60*24))

0
投票

其实你提出了一个很难的问题。我有现成的解决方案。也许我的解决方案对您有用。 这是存储库的链接。 https://github.com/SergeyKozlov/datacraft

这是一个链接到你的功能。

$tm->foreachTM($tm->getDate1start(), $tm->getDate1stop(), $tm->getRiseCountShow());

你需要看看我是如何使用我的功能的。

全部运行这个文件: https://github.com/SergeyKozlov/datacraft/blob/55cd32983e5aca8cf003d3a454f83234c5bdd884/system/cm/tm_action/index.php

写下你的问题,我会回答。

https://github.com/SergeyKozlov/datacraft/blob/55cd32983e5aca8cf003d3a454f83234c5bdd884/src/TM.php#L898

© www.soinside.com 2019 - 2024. All rights reserved.