本文介绍了计算javascript中两个日期之间的天数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
请帮我查看今天和其他日期之间的天数。这是我的
Please help me get the number of days between today's date and some other date.. Here is my example
它给了我 NaN
这是什么我想出来了。我的
Here is what I came up with. My demo
var cellvalue="2011-08-18 11:49:01.0 IST";
var firstDate = new Date();
var secondDate = cellvalue.substring(0, cellvalue.length-4);
alert(diffOf2Dates(firstDate,secondDate));
function diffOf2Dates(todaysDate,configDate)
{
/*var udate="2011-08-18 11:49:01.0";
var configDate=new Date(udate);*/
var oneDay = 24*60*60*1000; // hours*minutes*seconds*milliseconds
var firstDate = todaysDate; // Todays date
var secondDate = new Date(configDate);
var diffDays = Math.abs((firstDate.getTime() - secondDate.getTime())/(oneDay));
console.info(firstDate+", "+secondDate);
//console.info(Math.ceil(diffDays));
return Math.ceil(diffDays);
}
推荐答案
使用
var firstDate = new Date(); // Todays date
var secondDate = new Date(2011,08,19, 11,49,01);
var diffDays = (firstDate.getDate() - secondDate.getDate());
它显示NAN,因为你的构造函数是错误的。通过在原始代码中提醒secondDate来检查自己
It was showing NAN as your constructor is wrong. check yourself by alerting secondDate in your original code
编辑:如果两个日期在同一个月,则上述代码将起作用,一般情况下
Edit : above code will work if both dates are in same month, for general case
var oneDay = 24*60*60*1000;
var diffDays = Math.abs((firstDate.getTime() - secondDate.getTime()) / oneDay);
此外,这将给出结果作为日期的一小部分,因此如果您想计算整个日期,您可以使用Math.ceil或Math.floor
Also this will give result as fraction of date, so if you want to count whole dates you can use Math.ceil or Math.floor
这篇关于计算javascript中两个日期之间的天数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!