Ich habe eine Funktion, die alle 3 Minuten 24/7 mit setTimeout() läuft. Das Problem besteht darin, dass Daten von einer API abgerufen werden, für die maximal ein Monat angefordert wurde. Ich möchte es so oft wie möglich laufen lassen, aber es ist unnötig, dies zu tun, wenn ich wegen der Verschwendung von Anfragen schlafe. Wie kann ich zusätzlich nur mein Skript zwischen zB 06:30:00 und 20:00:00 ausführen?Wie function() häufig zu bestimmten Tageszeiten in Javascript ausgeführt werden
0
A
Antwort
1
Sie beide brauchen SetTimeout und Date() dies zu erreichen: für z.B.
var now = new Date();
var millisTill10 = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 10, 0, 0, 0) - now;
if (millisTill10 < 0) {
millisTill10 += 86400000; // it's after 10am, try 10am tomorrow.
}
setTimeout(function(){alert("It's 10am!")}, millisTill10);
Weitere Details folgen Sie bitte this
0
habe ich getestet und überprüft Code folgen. Meins ist 7:22 PM, was unter diesen Timings fällt und es sehr gut ausführt.
// get todays strict timings
// 06:30:00 and 20:00:00
setInterval(function() {
lowerDate = new Date();
lowerDate.setHours(6);
lowerDate.setMinutes(30);
lowerDate.setSeconds(0);
upperDate = new Date();
upperDate.setHours(20);
upperDate.setMinutes(0);
upperDate.setSeconds(0);
todayDate = new Date();
if (todayDate > lowerDate && todayDate < upperDate)
console.log("execute"); // execute only if in between these times
}, 3 * 60 * 1000) //Every 3 minutes
Verwandte Themen
- 1. Wie plane ich Herokus (Wartungsmodus oder Wiederaufladung) zu bestimmten Tageszeiten?
- 2. Nur JavaScript auf einer bestimmten Rails-Ansicht ausgeführt werden soll
- 3. function()() in Javascript
- 4. So zeigen Sie eine Nachricht zu bestimmten Tageszeiten in der ios app an
- 5. JavaScript-Animationen werden nicht in Reihenfolge ausgeführt?
- 6. Wann werden JavaScript-Funktionen ausgeführt
- 7. Wie häufig werden die Xilinx-Chips verwendet?
- 8. MedicationOrder für Tageszeiten
- 9. Was ist "function()" in Javascript?
- 10. JavaScript: Wie unterscheidet sich "function onload() {}" von "onload = function() {}"?
- 11. Node.js/express, Javascript Callback-Funktion nicht ausgeführt zu werden
- 12. Javascript am wenigsten häufig mehrere Algorithmus
- 13. Javascript-Code nicht ausgeführt werden sequentiell
- 14. javascript onclick function hinzufügen
- 15. Javascript - Lesen von einer häufig aktualisierten Datei
- 16. Einen Countdown für mehrere Tageszeiten
- 17. JavaScript Recursive Function Call Überschreiben
- 18. JavaScript kann nicht für Dateneingabe ausgeführt werden
- 19. Wie häufig verwendete physikalische Konstanten in Python gespeichert werden
- 20. Abfrage zur Auswahl zwischen zwei Tageszeiten
- 21. Javascript: Was ist der Unterschied zwischen $ (function() {}); und function() {}
- 22. setTimeout scheint zu schnell ausgeführt zu werden
- 23. Wie zu umhüllen std :: function
- 24. Wie Schluckaufgaben sequenziell ausgeführt werden?
- 25. Kompatibilitätstester (String Comparison Function) in JavaScript
- 26. Caldav-Server - zu häufig abgefragt
- 27. häufig irb Geschichte zu Datei
- 28. Business Object-Berichte, die in einem bestimmten Zeitraum ausgeführt werden
- 29. Kann eine jQuery-Funktion zwischen bestimmten Browserbreiten ausgeführt werden?
- 30. (function() {})() deklarieren/Initialisieren Javascript Funktion
Dank! Kannst du weiter erklären, wie das funktioniert. Ich verstehe, dass das Skript erst um 10 Uhr beginnt, aber wann wird es aufhören und wie mache ich es, wenn ich eine andere Start- und Endzeit haben möchte? – jaikl
@jaikl Sie können die Startzeit einstellen, indem Sie Werte in [Date()] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) ändern: 'new Date (year , Monat [, Datum [, Stunden [, Minuten [, Sekunden [, Millisekunden]]]]]); ' – emme
@jaikl Und zu Ende muss ** MillisTill10 ** Wert entsprechend der Zeit geändert werden, die Sie es starten möchten nochmal. Sie können auch [setInterval()] (https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setInterval) verwenden. – emme