首页 > 编程 > JavaScript > 正文

怎样用javascript计算两日期间相差的天数.

2019-11-18 11:32:55
字体:
来源:转载
供稿:网友

本文系作者原创,如要转贴,请保留以下信息:
http://blog.csdn.net/hunkdong/archive/2005/08/09/449132.aspx

 

最近,我做一个模块.里面需要用到两日期之间相差的天数,而且这东西还必须用javascript来实现,这下可把我难住了,有什么办法呢?大家都知道jsp,ASP,php等都提供了这个功能,就Javascript没有这个功能.

         没办法,只有自己动手写,写了半天头搞大了,结果就做不对.有点想放弃了,忽然眼前一亮

 

Math.abs(Date1 - Date2) 这个函数一出来,竞表示的是秒数.

 

有救了,在到网上一查,想不到某前辈早就实现了这个方法,现在我把这个方法,列出来大家一起参考一下!

 

<Html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

<title></title>

</head>

<body>

<button onClick="BTnCount_Click()">计算相差天数</button>

<script language="JavaScript">

  function btnCount_Click(){

    s1 = "2002-03-02"

    s2 = "2002-02-25"

    alert(DateDiff(s1,s2))

  }

  //计算天数差的函数,通用

  function DateDiff(sDate1, sDate2){  //sDate1和sDate2是2002-12-18格式

    var aDate, oDate1, oDate2, iDays

    aDate = sDate1.split("-")

    oDate1 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0])  //转换为12-18-2002格式

    aDate = sDate2.split("-")

    oDate2 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0])

    alert(oDate1 - oDate2)

    iDays = parseInt(Math.abs(oDate1 - oDate2) / 1000 / 60 / 60 /24)  //把相差的毫秒数转换为天数

    return iDays

  }

</script>

</body>



发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表