'Run code once a day

I was just wondering if it is possible to have a javascript for loop that only iterates through the loop once a day i.e. when the date changes?

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

    alert(myArray[i]);

}

So in the above loop, let it run, and freeze it or something only till the data changes, and the do another iteration, and just keep on doing that.. You know what I mean.

Thanks in advance!



Solution 1:[1]

If you want something to happen at predefined intervals, you can set a timeout/interval: http://www.w3schools.com/js/js_timing.asp

For example:

var dayInMilliseconds = 1000 * 60 * 60 * 24;
setInterval(function() { alert("foo"); },dayInMilliseconds );

edit: since you mentioned that the code will be running in a browser, this assumes the browser is running for at least 24 hrs and will not work otherwise.

Solution 2:[2]

the best way to achieve it is by creating a cookie that lasts for1 day.. Even if after the refresh of the web page or browser gets closed that countdown will still continue..

setcookie($cookie_name, $cookie_value, time() + 86400, "/"); 

This means 86400 = 1 day

Hope it helps

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 nolegs
Solution 2 Evangelos