Javascript funktion um gewisse Uhrzeit, setinterval Ressourcen Belastung?

2 Antworten

Ich bräuchte eine function, welche immer um die gleiche Uhrzeit, jeden Tags ausgeführt wird.

Funktioniert natürlich nur im Browserfenster, wenn die Seite darin auch geöffnet ist.

Nun habe ich eine setInterval function welche jede sekunde ausgeführt wird.

Im einfachsten Fall würde ich es einfach nur jede Minute ausführen und bei deinem Test nicht auf die Sekunden testen.

setInterval(() => {
  const date = new Date();

  if (date.getHours() === 23 && date.getMinutes() === 59) {
    alert('Do stuff');
  }
}, 60000);
Meine Frage: Ist das sehr ressourcen verbrauchend, da jede sekunde abgefragt wird?

Mit dem Intervall von einer Minute ist es zumindest schon 60 mal performater.

Die Frage ist aber, was du überhaupt bezwecken willst. Sicherlich gibt es für dein Vorhaben eine deutlich bessere Lösung aber dazu müsste man mehr wissen.

Woher ich das weiß:Berufserfahrung – Entwickle Webseiten seit über 25 Jahren.

jumbo125 
Fragesteller
 11.03.2023, 15:41

ein script auf meinem server lokal auszuführen

0
Babelfish  11.03.2023, 16:33
@jumbo125

Das ist keine Antwort. Im Browser oder auf dem Server?

Aber egal, ich habe dir ja eine Variante geschrieben, die funktioniert und nicht viele Ressourcen verbraucht.

0
elmex7  11.03.2023, 17:30
@jumbo125

Für sowas nutz man normalerweise Cron Jobs. Und ja, das gibt es auch unter Windows, heisst da Task Sheduler oder so

0
jumbo125 
Fragesteller
 11.03.2023, 19:05
@elmex7

super, ich habe ein apache auf einem Linux server, welches wiederum auf einem Android gerät läuft....

0
elmex7  12.03.2023, 15:47
@jumbo125

Na dann, gibt es da ja cron auf deinem server, alles wird gut :D

0
Ich bräuchte eine function, welche immer um die gleiche Uhrzeit, jeden Tags ausgeführt wird

um was zu tun?

Ggfs. ist schon der Ansatz mit Javascript nicht gerade die ideale Lösung dafür.
Wenn um eine bestimmte Uhrzeit etwas auf einem Server ausgeführt werden soll, dann lagert man das nicht auf einen Client aus, sondern erstellt sich dazu einen Cron-Job.