Berechnen Sie Datumsunterschiede in Jahren, Monaten und Tagen in JavaScript
Bestimmen Sie den genauen Unterschied zwischen zwei Datumsangaben unter Berücksichtigung von Faktoren wie Schaltjahren und unterschiedlich langen Monaten kann in der Tat eine komplexe Aufgabe sein. Für eine einfache und ungefähre Berechnung kann jedoch der folgende JavaScript-Code eine vernünftige Schätzung liefern:
today = new Date() past = new Date(2010,05,01) // remember this is equivalent to 06 01 2010 //dates in js are counted from 0, so 05 is june function calcDate(date1,date2) { var diff = Math.floor(date1.getTime() - date2.getTime()); var day = 1000 * 60 * 60 * 24; var days = Math.floor(diff/day); var months = Math.floor(days/31); var years = Math.floor(months/12); var message = date2.toDateString(); message += " was " message += days + " days " message += months + " months " message += years + " years ago \n" return message } a = calcDate(today,past) console.log(a) // returns Tue Jun 01 2010 was 1143 days 36 months 3 years ago
Der Aufruf der calcDate-Funktion mit zwei Date-Objekten (z. B. heute und vergangen) berechnet den Zeitunterschied in Millisekunden und dividiert es durch die Anzahl der Millisekunden eines Tages, um die Anzahl der Tage zu erhalten. Die Tage werden dann als Näherungswerte in Monate und Jahre gruppiert.
Diese Methode liefert eine grundlegende Schätzung der Datumsdifferenz in Tagen, Monaten und Jahren, berücksichtigt jedoch nicht alle Feinheiten des gregorianischen Kalenders . Für genauere Berechnungen oder spezifische Anforderungen sollten Sie die Verwendung einer speziellen Bibliothek oder eines Moduls in Betracht ziehen, das diese Komplexitäten genauer verarbeitet.
Das obige ist der detaillierte Inhalt vonWie kann ich mit JavaScript die ungefähre Differenz zwischen zwei Datumsangaben in Jahren, Monaten und Tagen berechnen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!