在javascript中计算两个日历日期之间的差异
我需要计算两个日历日期之间的差异。我浏览了很多帖子,但是返回的值不正确。 这是我的密码:-在javascript中计算两个日历日期之间的差异,javascript,html,jsp,Javascript,Html,Jsp,我需要计算两个日历日期之间的差异。我浏览了很多帖子,但是返回的值不正确。 这是我的密码:- function getTotalDays() { var date11 = document.getElementById("departure_date").value; var date22 = document.getElementById("arrival_date").value; var one_day=1000*60*60*24; var dat
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。
出什么问题了....传递给日期对象的值可能是错误的。这样做可能更容易:
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;
}
difference\u ms
输出为什么?您表示它位于5097600000ms的某个区域。您知道您可以这样做吗<代码>日期2-日期1?不需要getTime()
。字符串date11
和date22
的格式是什么?可能是解析错误。嘿,对于回复@jimjimmy1995,1天的差异为2419200000。@elclanrs hi,即使我使用date2-date1,它显示1天30天。嘿,它工作得很好。我没有意识到这可能是问题所在。很多。