js日期相减代码

js日期相减代码
已邀请:

LIly_Mao

赞同来自:

/*日期相減取天数*/
//《请假单》使用
function DateDiff(sDate1, sDate2) {
    var aDate, oDate1, oDate2, iDays, oDate3, oDate4
    oDate1 = StringToDate(sDate1 + ":00") //将表单日期字符串转换成日期格式
    oDate2 = StringToDate(sDate2 + ":00")
    if (oDate1 > oDate2) {
        //如果开始日期大于结束日期,清空
        return "";
    } else {
        //将表单日期字符串转成小时相同,日期相减+1获得天数
        oDate3 = StringToDate(sDate1.split(' ')[0]+" 00:00:00")
        oDate4 = StringToDate(sDate2.split(' ')[0] + " 00:00:00")
        iDays = parseInt(Math.abs(oDate4 - oDate3) / 1000 / 60 / 60 / 24) + 1 //把相差的毫秒数转成天数
        return iDays
    }
}
/*转换日期2015-08-13 12:29:00*/
function StringToDate(s) {
    var d = new Date();
    d.setYear(parseInt(s.substring(0, 4), 10));
    d.setMonth(parseInt(s.substring(5, 7) - 1, 10));
    d.setDate(parseInt(s.substring(8, 10), 10));
    d.setHours(parseInt(s.substring(11, 13), 10));
    d.setMinutes(parseInt(s.substring(14, 16), 10));
    d.setSeconds(parseInt(s.substring(17, 19), 10));
    return d;
}

要回复问题请先登录注册