gpt4 book ai didi

javascript - 使用 JavaScript 在给定日期之前最近的星期日

转载 作者:可可西里 更新时间:2023-11-01 02:04:42 25 4
gpt4 key购买 nike

我需要知道 phpjavascript 中给定日期的上周日的日期

让我们有一个函数 give_me_last_Sunday

give_me_last_Sunday('20110517') is 20110515
give_me_last_Sunday('20110604') is 20110529

完整备份在星期日 = 每周完成。如果我想恢复每日备份,我需要完整(每周)和每日备份。我需要在恢复到临时目录之前复制备份文件,所以我要恢复每日备份我需要知道我需要复制哪个每周备份文件以及每日文件。

我的想法是获取给定日期的 Julian 表示(或类似的东西),然后减去 1 并检查它是否是星期日......不确定这是否是最好的主意以及如何将给定日期转换为我可以减法。

最佳答案

根据 Thomas 的努力,如果输入字符串完全符合您指定的格式,则:

function lastSunday(d) {
var d = d.replace(/(^\d{4})(\d{2})(\d{2}$)/,'$1/$2/$3');
d = new Date(d);
d.setDate(d.getDate() - d.getDay());
return d;
}

编辑

如果我现在写那个,我不会依赖 Date 对象解析字符串,而是自己做:

function lastSunday(s) {
var d = new Date(s.substring(0,4), s.substring(4,6) - 1, s.substring(6));
d.setDate(d.getDate() - d.getDay());
return d;
}

虽然我测试过的所有浏览器都能正确解析 yyyy/mm/dd 格式,但我认为坚持使用基本方法更为稳健。特别是当它们可能更有效率时。

关于javascript - 使用 JavaScript 在给定日期之前最近的星期日,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6024328/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com