java中处理2个时间段相差几天很容易,直接调相关方法就行,不过js处理这类问题稍微有点不易,项目开发中也用到了,如下:
1
2
3
4
5
6
7
8
9
10
11
12
|
//计算两个日期天数差的函数,通用
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天,传入日期为当前日期之后肯定返回正的了。