在javascript中计算两个日历日期之间的差异

Calculate difference between two calendar dates in javascript

本文关键字:日期 日历 之间 两个 javascript 计算      更新时间:2023-09-26

我需要计算两个日历日期之间的差值。我已经通过各种帖子,但返回的值是不正确的。这是我的代码:-

    function getTotalDays()
{
    var date11 = document.getElementById("departure_date").value;
    var date22 = document.getElementById("arrival_date").value;
    var one_day=1000*60*60*24;
    var date1 = new Date(date11);
    var date2 = new Date(date22);
      // Convert both dates to milliseconds
      var date1_ms = date1.getTime();
      var date2_ms = date2.getTime();
      // Calculate the difference in milliseconds
      var difference_ms = date2_ms - date1_ms;
      // Convert back to days and return
      var diffDays =  Math.round(difference_ms/one_day); 
    alert(diffDays);

}

假设差2天,它显示为59。什么是错的. . ? ?

传递给date对象的值可能是错误的。这样做可能更容易:

var date1 = getDate(date11);
var date2 = getDate(date22);

getDate为:

function getDate(date) {
    //date format dd/mm/yyyy
    var dateArr = date.split('/');
    var date = new Date(dateArr[2], dateArr[1], dateArr[0]);
    return date;
}