计算日期之间的天数

calculate days between dates

本文关键字:之间 日期 计算      更新时间:2024-01-04

我试图计算两个日期之间的天数,但一直得到"NaN"。我看了其他帖子,但无法完全计算出来:-S

function checkdate() {
var currentTime = new Date()
var month = currentTime.getMonth() + 1
var day = currentTime.getDate()
var year = currentTime.getFullYear()
var datenow = (day + "/" + month + "/" + year)  

var startdate = document.forms[0].datescopestart.value;
var sDate = new Date(Date.parse("startdate","dd/mm/yy"));
var totaldays = Date.datenow - Date.sDate;  
    alert(totaldays);
    }

这是我在库中使用了一段时间的函数,效果很好。

function days_between(date1, date2) {
  // The number of milliseconds in one day
  var ONE_DAY = 1000 * 60 * 60 * 24
  // Convert both dates to milliseconds
  var date1_ms = date1.getTime()
  var date2_ms = date2.getTime()
  // Calculate the difference in milliseconds
  var difference_ms = Math.abs(date1_ms - date2_ms)
  // Convert back to days and return
  return Math.round(difference_ms/ONE_DAY)
}

在对Date.parse的调用中删除startdate周围的引号。和Date.在你前面的变量名进行计算。

最简单的方法如下:

var days = Math.floor(enddate.getTime()-startdate.getTime())/(24*60*60*1000);

其中startdateenddate是有效的Date对象。