第九区-Jquery超级群

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 390|回复: 4

2个日期差 [复制链接]

Rank: 7Rank: 7Rank: 7

发表于 2011-7-12 17:57:35 |显示全部楼层
<script type="text/javascript">
function getDateFromString(strDate)
{
        var   arrYmd = strDate.split("-");
        var   numYear = parseInt(arrYmd[0]);
        var   numMonth = parseInt(arrYmd[1]) - 1;
        var   numDay = parseInt(arrYmd[2]);
        return new Date(numYear,numMonth,numDay);
}
var datFrom   =   getDateFromString("2007-01-05");
var datTo   =   getDateFromString("2007-01-06");
var   numDays   = (datTo - datFrom);
alert(numDays);
</script>

Rank: 7Rank: 7Rank: 7

发表于 2011-7-13 11:34:07 |显示全部楼层
别人笑我太淫荡 我笑他人不开放

使用道具 举报

Rank: 7Rank: 7Rank: 7

发表于 2011-7-13 15:31:03 |显示全部楼层
直接这样不就行了么:
  1. new Date('2011-1-1')
复制代码
还有,你这样算日期差有点问题啊,如果要算2008-01-01到2011-09-09,你的不是算出来8天了?
还是算毫秒差,再计算天数好些。
  1. /*

  2. function 两时间天数差(date1, date2){
  3.         var args = arguments, error = false;
  4.         for(var i = 0, len = args.length; i < len && !error; i++){  //检查参数
  5.                 if( Object.prototype.toString.call(args[i]) == '[object String]' ){
  6.                         args[i] = new Date(args[i]);
  7.                         error = ( isNaN( -args[i] ) ) ? true : false;
  8.                 } else {
  9.                         error = ( args[i] instanceof Date );
  10.                 }
  11.         }
  12.         if(error){
  13.                 try {
  14.                         console.error({
  15.                                 'arguments':args[i],
  16.                                 'message':'参数的类型必须是有效的DateString(如:"2011/07/13")或Date',
  17.                                 'source':'计算时间差函数',
  18.                                 'type':'参数类型错误'
  19.                         });
  20.                         return;
  21.                 } catch(){
  22.                         throw new Error('计算时间差的函数参数类型只能是这两种类型:有效的DateString(如:"2011/07/13")或Date');
  23.                 }
  24.         }
  25.         return (date1 - date2) / 24 / 3600 / 1000;
  26. }

  27. var 某国成立 = 两时间天数差('1949/10/01', new Date)
  28. */
复制代码
太伤人了,写了一堆,结果报错不鸟他了

就这句话有用
  1. var daysCount = (date1 - date2) / 24 / 3600 / 1000;
复制代码
不积跬步无以至千里
不积小流无以成江海

阿良的小站

使用道具 举报

Rank: 7Rank: 7Rank: 7

热心会员

发表于 2011-7-13 16:24:18 |显示全部楼层
var daysCount = (date1 - date2) / 24 / 3600 / 1000;
这个最直接了
走别人的路,让别人打酱油去吧

使用道具 举报

Rank: 7Rank: 7Rank: 7

发表于 2011-7-13 16:52:26 |显示全部楼层
拿东西 灌水

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

Archiver|第九区-Jquery超级群    点击这里加入此群 点击这里加入此群

GMT+8, 2012-2-8 09:51 , Processed in 0.088950 second(s), 16 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部