码迷,mamicode.com
首页 > 其他好文 > 详细

计算两个日期之间相差的天数(带带负数) 支持格式YYYY-mm-dd比较

时间:2017-09-15 18:53:50      阅读:143      评论:0      收藏:0      [点我收藏+]

标签:new   负数   开始   mat   转换   art   ada   大于   start.s   

/**
 * 计算两个日期之间相差的天数(带带负数) 支持格式YYYY-mm-dd比较
 * @param higDate   减数
 * @param lowDate   被减数
 * @returns 差值天数  格式不正确返回null
 * @dada 2016-09-19 lhh添加备注
 */
function DateDiff(higDate, lowDate) {
	//sDate1和sDate2是2006-12-18格式
	var aDate, oDate1, oDate2, iDays;
	aDate = higDate.split("-");
	oDate1 = new Date((aDate[1] + ‘-‘ + aDate[2] + ‘-‘ + aDate[0]).replace(/-/g, "/"));
	//转换为12-18-2006格式
	aDate = lowDate.split("-");
	oDate2 = new Date((aDate[1] + ‘-‘ + aDate[2] + ‘-‘ + aDate[0]).replace(/-/g, "/"));
	var diff = oDate1 - oDate2;
	iDays = parseInt(diff / 1000 / 60 / 60 / 24);
	//把相差的毫秒数转换为天数
	if (isNaN(iDays)) return null;
	return iDays;
}

 

/**
 * 日期比较 支持格式YYYY-mm-dd HH:mm:ss比较
 * @param Date1   日期1
 * @param Date2   日期2
 * @returns 差值(为0相等  正值 Date1 大于 Date2 负值相反)  格式不正确返回null
 * @dada 2016-09-19 lhh添加备注
 */
function comptime(Date1, Date2) {
    var higTimes = Date1.substring(0, 10).split(‘-‘);
    var lowTimes = Date2.substring(0, 10).split(‘-‘);
    higTime = higTimes[1] + ‘-‘ + higTimes[2] + ‘-‘ + higTimes[0] + ‘ ‘ + higDate.substring(10, 19);
    lowTime = lowTimes[1] + ‘-‘ + lowTimes[2] + ‘-‘ + lowTimes[0] + ‘ ‘ + lowDate.substring(10, 19);
    var num = (Date.parse(higTime) - Date.parse(lowTime)) / 3600 / 1000;
    if (isNaN(num)) return null;
    return num;
}

 

/**
 * 两个日期的比较
 * @param strDateStart
 * @param strDateEnd
 * @returns {Boolean}
 */
function twoDateSize(strDateStart, strDateEnd) {
    var strSeparator = "-"; // 日期分隔符
    var oDate1;
    var oDate2;
    var iDays;
    oDate1 = strDateStart.split(strSeparator);
    oDate2 = strDateEnd.split(strSeparator);
    var strDateS = new Date(oDate1[0], oDate1[1] - 1, oDate1[2]);
    var strDateE = new Date(oDate2[0], oDate2[1] - 1, oDate2[2]);
    //开始大于结束
    if (strDateS > strDateE) {
        return false;
    } else {
        return true;
    }
}
function getDays(strDateStart, strDateEnd) {
	var strSeparator = "-"; // 日期分隔符
	var oDate1;
	var oDate2;
	var iDays;
	oDate1 = strDateStart.split(strSeparator);
	oDate2 = strDateEnd.split(strSeparator);
	var strDateS = new Date(oDate1[0], oDate1[1] - 1, oDate1[2]);
	var strDateE = new Date(oDate2[0], oDate2[1] - 1, oDate2[2]);
	iDays = parseInt(Math.abs(strDateS - strDateE) / 1000 / 60 / 60 / 24); // 把相差的毫秒数转换为天数
	return iDays;
}

  

 

计算两个日期之间相差的天数(带带负数) 支持格式YYYY-mm-dd比较

标签:new   负数   开始   mat   转换   art   ada   大于   start.s   

原文地址:http://www.cnblogs.com/binmengxue/p/7527367.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!