javascript - 每天运行一次代码

标签 javascript loops

我只是想知道是否有可能有一个 javascript for 循环,每天只迭代一次循环,即当日期更改时?

for(i=0; i < myArray.length; i++){

    alert(myArray[i]);

}

所以在上面的循环中,让它运行,然后卡住它或其他东西,直到数据发生变化,然后再进行一次迭代,然后继续这样做。你知道我的意思。

提前致谢!

最佳答案

使用 localStorage当您没有服务器时,这是最好的方法(因为用户可以更改计算机的时间并破坏您的逻辑,并且使用服务器更难破解它)

下面的方法更可靠:

// checks if one day has passed. 
function hasOneDayPassed()
  // get today's date. eg: "7/37/2007"
  var date = new Date().toLocaleDateString();

  // if there's a date in localstorage and it's equal to the above: 
  // inferring a day has yet to pass since both dates are equal.
  if( localStorage.yourapp_date == date ) 
      return false;

  // this portion of logic occurs when a day has passed
  localStorage.yourapp_date = date;
  return true;
}


// some function which should run once a day
function runOncePerDay(){
  if( !hasOneDayPassed() ) return false;

  // your code below
  alert('Good morning!');
}


runOncePerDay(); // run the code
runOncePerDay(); // does not run the code

关于javascript - 每天运行一次代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11741979/

相关文章:

javascript - 我害怕覆盖函数或我的函数被覆盖

javascript - node.js 是 Perl 和 Python 等传统脚本语言的可行替代方案吗?

javascript - For循环取javascript中对象属性的平均值

css - 如何让 CSS 动画每 10 秒播放一次

c - 这段c/++代码的作用是什么?

python - 如何迭代创建新变量来存储列表的第 i 个值

c - 使用循环语句进行 C 练习 : Write code to reverse numbers with do-while statement

javascript - 使用工具提示时 Div 消失

javascript - 使用 AJAX 将 JSON 发送到 PHP

asp.net - 处理用户在 ASP.NET MVC 网站中按下 'Enter' 键