封装时间和cookie合集

自己封装的大合集咯嘻嘻

/** 
 * 获取本周、本季度、本月、上月的开端日期、停止日期 
 */
var now = new Date(); //当前日期 
var nowDayOfWeek = now.getDay(); //今天本周的第几天 
var nowDay = now.getDate(); //当前日 
var nowMonth = now.getMonth(); //当前月 
var nowYear = now.getYear(); //当前年 
nowYear += (nowYear < 2000) ? 1900 : 0;

var lastMonthDate = new Date(); //上月日期 
lastMonthDate.setDate(1);
lastMonthDate.setMonth(lastMonthDate.getMonth() - 1);
var lastYear = lastMonthDate.getYear();
var lastMonth = lastMonthDate.getMonth();
export default {

  //格局化日期:yyyy-MM-dd 
  formatDate(date) {
    var myyear = date.getFullYear();
    var mymonth = date.getMonth() + 1;
    var myweekday = date.getDate();

    if (mymonth < 10) {
      mymonth = "0" + mymonth;
    }
    if (myweekday < 10) {
      myweekday = "0" + myweekday;
    }
    return (myyear + "-" + mymonth + "-" + myweekday);
  },
  //yyyy-MM-dd HH:mm:ss
  normalTime(time, type) {
    if (time) {
      var date = new Date();
      date.setTime(time);
      var year = date.getFullYear();
      var month = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) * 1 : date.getMonth() + 1;
      var day = date.getDate() < 10 ? '0' + date.getDate() : date.getDate();
      var hours = date.getHours() < 10 ? '0' + date.getHours() : date.getHours();
      var minutes = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes();
      var seconds = date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds();
      if (type == '-') {
        return year + '-' + month + '-' + day + ' ' + hours + ':' + minutes + ':' + seconds;
      } else if (type == '/') {
        return year + '/' + month + '/' + day + ' ' + hours + ':' + minutes + ':' + seconds;
      } else if (type == '.') {
        return year + '.' + month + '.' + day + ' ' + hours + ':' + minutes + ':' + seconds;
      } else {
        return year + '年' + month + '月' + day + '日' + ' ' + hours + ':' + minutes + ':' + seconds;
      }
    }
  }
  //返回最近x日时间段
  fun_date(aa) {
    var formInline = {};
    var date1 = new Date();
    formInline.end_time =
      date1.getFullYear() +
      "-" +
      (date1.getMonth() + 1) +
      "-" +
      date1.getDate();

    var date2 = new Date(date1);
    date2.setDate(date1.getDate() - aa);
    formInline.start_time =
      date2.getFullYear() +
      "-" +
      (date2.getMonth() + 1) +
      "-" +
      date2.getDate();
    return formInline
  }
  //获得某月的天数 
  getMonthDays(myMonth) {
    var monthStartDate = new Date(nowYear, myMonth, 1);
    var monthEndDate = new Date(nowYear, myMonth + 1, 1);
    var days = (monthEndDate - monthStartDate) / (1000 * 60 * 60 * 24);
    return days;
  },

  //获得本季度的开端月份 
  getQuarterStartMonth() {
    var quarterStartMonth = 0;
    if (nowMonth < 3) {
      quarterStartMonth = 0;
    }
    if (2 < nowMonth && nowMonth < 6) {
      quarterStartMonth = 3;
    }
    if (5 < nowMonth && nowMonth < 9) {
      quarterStartMonth = 6;
    }
    if (nowMonth > 8) {
      quarterStartMonth = 9;
    }
    return quarterStartMonth;
  },

  //获得本周的开端日期 
  getWeekStartDate() {
    var weekStartDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek + 1);
    return this.formatDate(weekStartDate);
  },

  //获得本周的停止日期 
  getWeekEndDate() {
    var weekEndDate = new Date(nowYear, nowMonth, nowDay + (7 - nowDayOfWeek));
    return this.formatDate(weekEndDate);
  },

  //获得本月的开端日期 
  getMonthStartDate() {
    var monthStartDate = new Date(nowYear, nowMonth, 1);
    return this.formatDate(monthStartDate);
  },

  //获得本月的停止日期 
  getMonthEndDate() {
    var monthEndDate = new Date(nowYear, nowMonth, this.getMonthDays(nowMonth));
    return this.formatDate(monthEndDate);
  },

  //获得上月开端时候 
  getLastMonthStartDate() {
    var lastMonthStartDate = new Date(nowYear, lastMonth, 1);
    return this.formatDate(lastMonthStartDate);
  },

  //获得上月停止时候 
  getLastMonthEndDate() {
    var lastMonthEndDate = new Date(nowYear, lastMonth, this.getMonthDays(lastMonth));
    return this.formatDate(lastMonthEndDate);
  },

  //获得本季度的开端日期 
  getQuarterStartDate() {
    var quarterStartDate = new Date(nowYear, this.getQuarterStartMonth(), 1);
    return this.formatDate(quarterStartDate);
  },

  //或的本季度的停止日期 
  getQuarterEndDate() {
    var quarterEndMonth = this.getQuarterStartMonth() + 2;
    var quarterStartDate = new Date(nowYear, quarterEndMonth, this.getMonthDays(quarterEndMonth));
    return this.formatDate(quarterStartDate);
  },

  //本月开始日
  getStartMonth() {
    let time = new Date();
    let y = time.getFullYear();
    let m = time.getMonth() + 1;
    if (m < 10) {
      m = '0' + m
    }
    let ss = y + '-' + m + '-01';
    return ss;
  },

  //本月结束月
  getEndMonth() {
    let time = new Date();
    let y = time.getFullYear();
    let m = time.getMonth() + 1;
    if (m < 10) {
      m = '0' + m
    }
    if (m == 2) {
      if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0) {
        var ee = y + '-' + m + '-29';
      } else {
        var ee = y + '-' + m + '-28';
      }
    } else if (m % 2 == 0) {
      var ee = y + '-' + m + '-31';
    } else {
      var ee = y + '-' + m + '-30';
    }
    return ee;
  },

  //获取当天
  getToday() {
    let time = new Date();
    let y = time.getFullYear();
    let m = time.getMonth() + 1;
    let d = time.getDate();
    if (m < 10) {
      m = '0' + m
    }
    if (d < 10) {
      d = '0' + d
    }
    return y + '-' + m + '-' + d;
  },

  //获取cookie
  getCookie(name) {
    var arr,
      reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)");
    if ((arr = document.cookie.match(reg))) {
      return unescape(arr[2]);
    } else {
      return null;
    }
  },

  setCookie(option) {
    option = option || {};
    //option 可设置属性:name value domain expires path secure SameSite
    if (option.expires) { //将配置项中的过期时间格式化
      option.expires = +new Date() + option.expires * 1000;
      option.expires = new Date(option.expires).toGMTString();
    }
    var cookie = [];
    for (var key in option) {
      cookie.push(key + "=" + option[key])
    }
    document.cookie = cookie.join("; ")
  },

  //删除cookie
  delCookie(name) {
    var exp = new Date();
    exp.setTime(exp.getTime() - 1);
    var cval = this.getCookie(name);
    if (cval != null)
      document.cookie = name + "=" + cval + ";expires=" + exp.toGMTString();
  }
}


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值