Javascript 提醒我约会的功能

Javascript 提醒我约会的功能,javascript,Javascript,我有一个函数,它表示一个从开始日期算起2周的日期,按每过一个星期四计算,但不包括制定日期的那一周的星期四 function GetThursdayIn2Weeks(date) { var day = date.getDay(); // Add 2 weeks. var newDate = new Date(date.setTime(date.getTime() + (14 * 86400000))); // Adjust for Thursday. v

我有一个函数,它表示一个从开始日期算起2周的日期,按每过一个星期四计算,但不包括制定日期的那一周的星期四

function GetThursdayIn2Weeks(date)
{
    var day = date.getDay();

    // Add 2 weeks.
    var newDate = new Date(date.setTime(date.getTime() + (14 * 86400000)));

    // Adjust for Thursday.
    var adjust = 4 - day;
    if (adjust <= 0) // Might need to be changed - See comments!
      adjust +=7;

    // Apply Thursday adjustment.
    newDate = new Date(newDate.setTime(newDate.getTime() + (adjust * 86400000)));

    return newDate;    
}
我该如何让它在流程开始后的一周内,每天启动一个不同的功能,提醒我即将到来的到期日,但在流程结束之前

您可以使用setTimeout在设定的时间后执行提醒。但是,问题是javascript环境可能无法长时间运行,无论是node.js还是浏览器

我建议这些机制:

使用给定代码计算目标日期后,将其存储在localstorage中 定义一个函数,该函数将使用setTimeout来定义给定目标日期的下一次提醒 加载页面时,对localstorage中存储的每个日期使用该函数 将日期添加到localstorage时,或给定的目标日期到达其提醒之一时,请为此特定日期调用函数 上述功能应为第一天设置一个计时器,该时间大于当前日期,大于目标日期前一周的第一天,且小于目标日期


这里有一个“希望可以工作。

javascript会在整个加载过程中保持加载吗?”当页面加载时,对存储在localstorage中的每个日期使用该函数“我该怎么做?”?我会用它吗?var myDate=new DateparseIntlocalStorage['key'],10;这是正确的方法吗?var now=新日期;var millistal10=new Datenow.getFullYear,now.getMonth,now.getDate,10,0,0-now;如果millisTill10<0{millisTill10+=86400000;//在上午10点之后,请明天上午10点尝试。}setTimeoutfunction{alertIt's 10am!},millisTill10@joe222抱歉刚刚回来;我将尝试回答您的问题,并发布一些示例code@joe222关于localStorage:您可以使用它来保存日期,以便在重新加载后仍然可以检索这些日期。为此,请使用localStorage.setItemkey、data存储创建日期,以及localStorage.getItemkey在需要时检索日期。localStorage仅存储字符串,因此您需要根据其字符串表示形式重新创建日期。此外,如果要存储日期数组,则在使用JSON.parsedata对数组进行存储和反序列化时,需要使用JSON.stringifydate对数组进行序列化。@joe222 setTimeout的使用看起来是正确的。您可以使用该库来简化日期处理