js中两个日期大小比较,获取当前日期,日期加减一天

两个日期大小比较

  • 格式(yyyy-mm-dd):
/*
*参数a: 例如 "2017-08-23"
*参数b: 例如 "2017-11-06"
*flag: String类型,判断两个日期大小的标识。(自己定义就行)
*/
 function duibi(a, b,flag) {
        var arr = a.split("-");
        var starttime = new Date(arr[0], arr[1], arr[2]);
        var starttimes = starttime.getTime();
        var arrs = b.split("-");
        var endTime = new Date(arrs[0], arrs[1], arrs[2]);
        var endTimes = endTime.getTime();
        if (endTimes >= starttimes) {
                  flag = "true"; 
                  return flag; 
        }else{
                flag = "false"; 
                 return flag; 
     }
    }
  • 格式(yyyy-mm-dd hh:mi:ss)
    function comptime() {
                var beginTime = "2009-09-21 00:00:00";
        var endTime = "2009-09-21 00:00:01";
        var beginTimes = beginTime.substring(0, 10).split('-');
        var endTimes = endTime.substring(0, 10).split('-');
        beginTime = beginTimes[1] + '-' + beginTimes[2] + '-' + beginTimes[0] + ' ' +beginTime.substring(10, 19);
    endTime = endTimes[1] + '-' + endTimes[2] + '-' + endTimes[0] + ' ' + endTime.substring(10, 19);

    alert(beginTime + "aaa" + endTime);
    alert(Date.parse(endTime));
    alert(Date.parse(beginTime));
    var a = (Date.parse(endTime) - Date.parse(beginTime)) / 3600 / 1000;
    if (a < 0) {
        alert("endTime小!");
    } else if (a > 0) {
        alert("endTime大!");
    } else if (a == 0) {
        alert("时间相等!");
    } else {
        return 'exception'
    }
}

JS中获取日期前一个月的日期

#参数date格式 : yyyy-mm-dd
    function getPreMonth(date) {
        var arr = date.split('-');
        var year = arr[0]; //获取当前日期的年份
        var month = arr[1]; //获取当前日期的月份
        var day = arr[2]; //获取当前日期的日
        var days = new Date(year, month, 0);
        days = days.getDate(); //获取当前日期中月的天数
        var year2 = year;
        var month2 = parseInt(month) - 1;
        if (month2 == 0) {
            year2 = parseInt(year2) - 1;
            month2 = 12;
        }
        var day2 = day;
        var days2 = new Date(year2, month2, 0);
        days2 = days2.getDate();
        if (day2 > days2) {
            day2 = days2;
        }
        if (month2 < 10) {
            month2 = '0' + month2;
        }
        var t2 = year2 + '-' + month2 + '-' + day2;
        return t2;
}

日期加减一天

#String 转为 data:  ("yyyy-MM-dd")格式的字符串  转为 //Wed Jul 05 2017 13:50:11 GMT+0800 (中国标准时间)
    function convertDateFromString(dateString) {
            if (dateString) {
                var date = new Date(dateString.replace(/-/,"/"))
                return date;
        }
    }

# 格式化日期 : Wed Jul 05 2017 13:50:11 GMT+0800 (中国标准时间) 准尉  格式为 yyyy-mm-dd 的日期类型     */
    function formatTime(date) {
        var year = date.getFullYear();
        var month = date.getMonth()+1, month = month < 10 ? '0' + month : month;
        var day = date.getDate(), day =day < 10 ? '0' + day : day;
        return year + '-' + month + '-' + day;
    }

例子: var test = convertDateFromString("2017-10-11");//返回标准的中国时间
    test = formatTime(test);//返回  yyyy-mm-dd 的Date类型
    var now = test.split('-')
    now = new Date(Number(now['0']),(Number(now['1'])-1),Number(now['2']))
    now.setDate(now.getDate() - 1); #setDate()方法实现 加 或 减 一天(可以避免 1号时减一天出错的情况),setDate()方法不会返回任何值,但调用者now会发生改变
    var xx = formatTime(now);

希望对大家有所帮助!


  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值