有思俱乐部学习园地

判断现在时间和从前时间的间隔


2.2.3 、U.UF.D.getDateInterval(date)方法

功能:判断现在时间和从前时间的间隔,精确到分钟,小时,天数.超过3天则返回 月日时分 超过1年则返回 年月日时分
//
//判断现在时间和从前时间的间隔,精确到分钟,小时,天数.超过3天则返回 月日时分 超过1年则返回 年月日时分
//参数一:时间格式  
//   1、javascrpt 自带的时间格式 datetime类型 Sun Mar 04 2018 18:45:54 GMT+0800 (中国标准时间)
//   2、sqlserver 时间格式 /Date(1364812396843)/
//   3、mongodb 时间格式 2018/01/01 01:01:01
//   4、mysql 时间格式 2018-01-01 01:01:01
//   5、nodejs的json时间"2018-03-04T11:14:27.878Z"
//  让学生重写
U.UF.D.getDateInterval = function (date) {
    var _return,                                                                  //申明变量
        _nowTime = U.UF.D.formatDateToArray(new Date(), "Array"),                          //申明变量_nowTime 并赋值
        _pastTime = U.UF.D.formatDateToArray(date, "Array");                                  //申明变量_pastTime 并赋值
    if (_nowTime[0] == _pastTime[0] ) {                                                       //当年份为同一年时候
        if (_nowTime[2] - _pastTime[2] < 3 && _nowTime[1] == _pastTime[1]) {                                                  //判断是否是三天内发的
            if (_nowTime[2] == _pastTime[2]) {                                               //判断是否是同一天的
                if (_nowTime[3] == _pastTime[3]) {                                           //判断是否是同一小时的
                    _return = _nowTime[4] - _pastTime[4] + '分钟前';                           //是同一小时的 就给_return赋值
                } else {
                    _return = _nowTime[3] - _pastTime[3] + '小时前';                           //不是同一小时的 就给_return赋值
                }
            } else {
                _return = _nowTime[2] - _pastTime[2] + '天前';                                //不是同一天时的 就给_return赋值
            }
        } else {
            _return = _pastTime[1] + '-' + _pastTime[2] + ' ' + _pastTime[3] + ':' + _pastTime[4] + '';        //不是三天之内的 就给_return赋值
        }
    } else {
        _return = _pastTime[0] + '-' + _pastTime[1] + '-' + _pastTime[2] + ' ' + _pastTime[3] + ':' + _pastTime[4] + ''; //不是同一小年的 就给_return赋值
    }
    return _return;
}

示例:U.UF.D.getDateInterval('2018/01/01 01:01:01');
结果:1-1 1:1


            

尝试一下:

U.UF.D.getDateInterval("2018/01/01 01:01:01");

返回结果

工作人员

 
            
作者:周琳恒
信息录入:周琳恒