计算javascript中两个日期之间的天数 [英] Count Number of days between 2 dates in javascript

查看:87
本文介绍了计算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中两个日期之间的天数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆