Heim > Web-Frontend > js-Tutorial > Wie kann ich mithilfe von JavaScript überprüfen, ob ein Datum weniger als eine Stunde zurückliegt?

Wie kann ich mithilfe von JavaScript überprüfen, ob ein Datum weniger als eine Stunde zurückliegt?

王林
Freigeben: 2023-08-25 09:05:02
nach vorne
1590 Leute haben es durchsucht

如何使用 JavaScript 检查日期是否小于 1 小时前?

In diesem Tutorial lernen wir, den Unterschied zwischen zwei Daten zu ermitteln und zu prüfen, ob der Unterschied weniger als eine Stunde beträgt. Manchmal müssen Entwickler stündlich mit Datumsobjekten arbeiten und einige Vorgänge ausführen. Dies könnte also eine Möglichkeit sein, zu überprüfen, ob eine bestimmte Aktion vor einer Stunde ausgeführt wurde, und sie dann erneut auszuführen. Andernfalls warten Sie, bis diese Stunde abgeschlossen ist.

Hier lernen wir verschiedene Möglichkeiten kennen, mit JavaScript zu überprüfen, ob ein Datum weniger als eine Stunde zurückliegt.

Verwenden Sie die getTime()-Methode

Die Methode

getTime() gibt die Gesamtzahl der Millisekunden in einem Datum seit dem 1. Januar 1970 zurück. Daher können wir die Methode getTime() verwenden, um die Gesamtzahl der Millisekunden seit dem 1. Januar 1970 für das aktuelle und das vorherige Datum zu ermitteln. Danach können wir den Unterschied in den gesamten Millisekunden der beiden Datumsangaben ermitteln und ihn mit den gesamten Millisekunden der Stunde vergleichen, die 1000*60*60 beträgt.

Grammatik

Benutzer können JavaScript gemäß der folgenden Syntax verwenden, um zu überprüfen, ob das Datum weniger als 1 Stunde zurückliegt.

let current_date = new Date();
let difference = current_date.getTime() - date.getTime();
let hoursMilli = 1000 * 60 * 60; // milliseconds * seconds * minutes
if (Math.abs(difference) < hoursMilli) {
   
   // less than 1 hour spent
} else {
   
   // more than 1 hour ago
}
Nach dem Login kopieren

In der obigen Syntax enthält hoursMilli die gesamten Millisekunden der Stunde und wir verwenden die Methode Math.abs(), um die absolute Differenz in Millisekunden zwischen zwei Datumsangaben zu ermitteln.

Schritte

Schritt 1 – Erstellen Sie zwei Termine.

Schritt 2 – Ermitteln Sie mit der Methode getTime() die gesamten Millisekunden zweier Datumsangaben, ermitteln Sie die Differenz zwischen ihnen und speichern Sie ihren Wert in der Differenzvariablen.

Schritt 3 – Speichern Sie die Gesamtzahl der Millisekunden für 1 Stunde in der Variablen „hoursMilli“.

Schritt 4 – Wenn der absolute Wert der Differenzvariablen kleiner als HourMilli ist, bedeutet das, dass 1 Stunde noch nicht verbraucht wurde.

Beispiel

Im folgenden Beispiel haben wir zwei verschiedene Daten mit unterschiedlichen Zeitstempeln erstellt. Wir folgen den oben genannten Schritten und vergleichen das Datum und die Gesamtmillisekunden von aktuelles_Datum mit den Gesamtmillisekunden von 1 Stunde, um zu prüfen, ob das Datum weniger als eine Stunde zurückliegt.

<html>
<body>
   <h3>Using the <i> custom algorithm </i> to check if the date was less than 1 hour ago.</h2>
   <div id="output"> </div>
   <script>
      let output = document.getElementById("output");
      let date1 = new Date(2023, 02, 11);
      
      // Creating a date that is not less than 1 hour ago
      let date2 = new Date(new Date().getTime() - 20302);   
      function isHourSpent(date) {
         let current_date = new Date();
         let difference = current_date.getTime() - date.getTime();
         console.log(difference);
         let hoursMilli = 1000 * 60 * 60;
         
         // comparing the hour's total milliseconds and the difference between the two dates.
         if (Math.abs(difference) < hoursMilli) {
            output.innerHTML += "The " + date + " is less than an hour ago! <br/>";
         } else {
            output.innerHTML += "The " + date + " is not less than hour ago! <br/>";
         }
      }
      isHourSpent(date1);
      isHourSpent(date2);
   </script>
</body>
</html> 
Nach dem Login kopieren

Verwenden Sie die setMinutes()-Methode des Datumsobjekts

Mit der Methode

setMinutes() im Date-Objekt können Entwickler die Minuten im Zeitstempel festlegen. Für das Datum sind drei Parameter erforderlich: Minuten, Sekunden und Millisekunden. Sekunden und Millisekunden sind optional.

Wenn wir die Minuten auf Null setzen und die beiden Daten vergleichen, können wir wissen, ob ein bestimmtes Datum vor einer Stunde liegt.

Grammatik

Benutzer können die Methode setMinute() gemäß der folgenden Syntax verwenden, um zu überprüfen, ob die Differenz zwischen zwei Datumsangaben weniger als eine Stunde beträgt.

date.setMinutes(0, 0, 0);
current_date.setMinutes(0, 0, 0);
if (date - current_date == 0) {
   
   // difference between the two dates is not more than an hour
} else {
   
   // difference between two dates more than an hour.
} 
Nach dem Login kopieren

Schritte

Schritt 1 – Verwenden Sie die Methode setMinutes() und übergeben Sie 0, 0, 0 als Parameter, um die Minuten, Sekunden und Millisekunden von auf Null > dem vorherigen Datum zu setzen.

Schritt 2 – Setzen Sie die Minuten des aktuellen_Datums auf Null.

Schritt 3 – Berechnen Sie die Differenz zwischen den beiden Daten; wenn sie Null ist, liegt das Datum weniger als eine Stunde zurück.

Beispiel

In diesem Beispiel verwenden wir die Methode setMinutes(), um das Datum und die Gesamtzahl der Minuten auf Null zu setzen. Danach nehmen wir die Differenz zwischen den Datumsangaben und geben die Differenz in Millisekunden zwischen den Datumsangaben zurück.

Wenn die Differenz Null ist, sind Jahr, Monat, Tag und Stunde der beiden Daten gleich. Daher können wir sagen, dass dieser Tag weniger als 1 Stunde her ist.

<html>
<body>
   <h3>Using the <i> setMinutes() method </i> to check if the date was less than 1 hour ago.</h2>
   <div id="output"> </div>
   <script>
      let output = document.getElementById("output");
      let date1 = new Date(2022, 12, 01);
      let date2 = new Date(new Date().getTime() - 20302);
      
      function isHourSpent(date) {
         let current_date = new Date();
         date.setMinutes(0, 0, 0);
         current_date.setMinutes(0, 0, 0);
         if (date - current_date == 0) {
            output.innerHTML += "The " + date + " is less than hour ago! <br/>";
         } else {
            output.innerHTML += "The " + date + " is not less than an hour ago! <br/>";
         }
      }
      isHourSpent(date1);
      isHourSpent(date2);
   </script>
</body>
</html>
Nach dem Login kopieren

In diesem Tutorial haben wir gelernt, den Unterschied zwischen zwei Datumsangaben zu ermitteln und zu überprüfen, ob das Datum weniger als eine Stunde zurückliegt. Darüber hinaus können Benutzer die Methoden diff() und isAfter() der Moment Js-Bibliothek verwenden, um zu überprüfen, ob sie identisch sind. Benutzer sollten jedoch bedenken, dass die Moment JS-Bibliothek jetzt veraltet ist.

Das obige ist der detaillierte Inhalt vonWie kann ich mithilfe von JavaScript überprüfen, ob ein Datum weniger als eine Stunde zurückliegt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage