在JavaScript 中計算年、月、日的日期差異
在JavaScript 中,精確取得兩個日期之間的差異可能具有挑戰性由於月份長度和閏年的變化。不過,如果基本精度可以接受,可以採用簡單的計算方法。
日期計算函數
計算和格式化日期差的函數:
function calcDate(date1, date2) { const diff = date1.getTime() - date2.getTime(); const day = 1000 * 60 * 60 * 24; const days = Math.floor(diff / day); const months = Math.floor(days / 31); const years = Math.floor(months / 12); return `${date2.toDateString()} was \ ${days} days, ${months} months, ${years} years ago`; }
範例用法
const today = new Date(); const past = new Date(2010, 5, 1); // Note: Month values are zero-based, so June is 5 console.log(calcDate(today, past)); // Outputs: "Tue Jun 01 2010 was 1143 days, 36 months, 3 years ago"
輸出解釋
請注意,此計算不會不考慮閏年或每個月的確切天數。這種簡化的方法提供了大多數實際用例的差異的粗略估計。
以上是如何使用 JavaScript 計算兩個日期之間的年、月、日差異?的詳細內容。更多資訊請關注PHP中文網其他相關文章!