java中处理2个时间段相差几天很容易,直接调相关方法就行,不过js处理这类问题稍微有点不易,项目开发中也用到了,如下:
//计算两个日期天数差的函数,通用 function dateDiff(sDate2) { var sDate1=new Date().pattern("yyyy-MM-dd"); sDate2=LEx.util.Format.formatDate(sDate2,"yyyy-MM-dd"); var aDate, oDate1, oDate2, iDays; aDate = sDate1.split("-"); oDate1 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0]); //转换为yyyy-MM-dd格式 aDate = sDate2.split("-"); oDate2 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0]); iDays = parseInt((oDate1 - oDate2) / 1000 / 60 / 60 / 24); //把相差的毫秒数转换为天数 return iDays; //返回相差天数 }
直接调用此函数,传日期参数就行,如传“2014年7月12日”或者“2014-07-12”,直接返回与当前日期相差的天数,如果传入日期为当前日期之前,那么返回负的,如-2,就代表差2天,传入日期为当前日期之后肯定返回正的了。