Bestimmen von Datumsunterschieden in Jahren, Monaten und Tagen in JavaScript
Bestimmen der Differenz zwischen zwei Daten in Jahren, Monaten und Tagen kann in JavaScript aufgrund von Inkonsistenzen in Lösungen, die nur Unterschiede in einer Einheit (Jahre, Monate oder Tage) oder Ungenauigkeiten in bieten, eine Herausforderung darstellen Berechnungen.
Hier ist eine umfassendere Lösung, die gemeinsame Jahre und Schaltjahre sowie die genaue Differenz in Tagen zwischen Monaten berücksichtigt:
today = new Date(); past = new Date(2010, 05, 01); // Equivalent to June 1, 2010 function calcDate(date1, date2) { // Calculate the difference in milliseconds var diff = Math.floor(date1.getTime() - date2.getTime()); // Convert milliseconds to days var day = 1000 * 60 * 60 * 24; var days = Math.floor(diff / day); // Calculate months and years from days var months = Math.floor(days / 31); var years = Math.floor(months / 12); // Format the message var message = date2.toDateString(); message += " was "; message += days + " days "; message += months + " months "; message += years + " years ago \n"; return message; } console.log(calcDate(today, past)); // Output: Tue Jun 01 2010 was 1143 days 36 months 3 years ago
Diese Lösung berechnet die Differenz zwischen zwei Daten genau indem Sie die Differenz in Millisekunden in Tage umrechnen und dann aus der Gesamtzahl der Tage die Monate und Jahre weiter ableiten.
Das obige ist der detaillierte Inhalt vonWie kann ich mit JavaScript die Differenz zwischen zwei Datumsangaben in Jahren, Monaten und Tagen genau berechnen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!