js 时间处理,最近几天,几个月

https://www.cnblogs.com/carekee/articles/1678041.html
关于时间戳与时间日期之间的转换,文章信息量全面。可以研究一下

最近7天,15天 ,30天,6个月,12个月,36个月

let data = new Date().getTime()
    // 昨天日期
    let ms = 24 * 3600 * 1000
// num < 3 表示的是最近几天,等于3表示 最近今个月
// type =1 表示 最近7天、最近6个月
// type =2 表示 最近15天、最近12个月
// type =3 表示 最近30天、最近36个月
    if (num < 3) {
      params.endDate = moment(data).format('YYYY-MM-DD')
      if (type === 1) {
        params.startDate = moment(data - 7 * ms).format('YYYY-MM-DD')
      }
      if (type === 2) {
        params.startDate = moment(data - 15 * ms).format('YYYY-MM-DD')
      }
      if (type === 3) {
        params.startDate = moment(data - 35 * ms).format('YYYY-MM-DD')
      }
    } else {
      let nowMouth = moment(data).format('YYYY-MM')
      let numMouth = nowMouth.split('-').map(value => Number(value))
      numMouth[1]--
      if (numMouth[1] === 0) {
        numMouth[0]--
        numMouth[1] = 12
      }
      if (numMouth[1] < 10) {
        numMouth[1] = ('0' + numMouth[1].toString())
      }
      params.endDate = numMouth.join('-')
      numMouth[1] = Number(numMouth[1])
      if (type === 1) {
        if (numMouth[1] >= 6) {
          numMouth[1] = numMouth[1] - 5
        } else {
          numMouth[1] = 7 + numMouth[1]
          numMouth[0]--
        }
        if (numMouth[1] < 10) {
          numMouth[1] = ('0' + numMouth[1].toString())
        }
        params.startDate = numMouth.join('-')
      }
      if (type === 2) {
        if (numMouth[1] < 12) {
          numMouth[0]--
          numMouth[1]++
        } else {
          numMouth[1] = 1
        }
        if (numMouth[1] < 10) {
          numMouth[1] = ('0' + numMouth[1].toString())
        }
        params.startDate = numMouth.join('-')
      }
      if (type === 3) {
        if (numMouth[1] < 12) {
          numMouth[0] = numMouth[0] - 2
          numMouth[1]++
        } else {
          numMouth[0] = numMouth[0] - 1
          numMouth[1] = 1
        }
        if (numMouth[1] < 10) {
          numMouth[1] = ('0' + numMouth[1].toString())
        }
        params.startDate = numMouth.join('-')
      }
    }

使用moment.js 实现上述功能

if (num === 3) {
      if (type < 4) {
        params.endDate = moment().subtract(1, 'months').format('YYYY-MM')
        if (type === 1) {
          params.startDate = moment().subtract(6, 'months').format('YYYY-MM')
        }
        if (type === 2) {
          params.startDate = moment().subtract(12, 'months').format('YYYY-MM')
        }
        if (type === 3) {
          params.startDate = moment().subtract(36, 'months').format('YYYY-MM')
        }
      }
    } else {
      if (type < 4) {
        params.endDate = moment().subtract(1, 'day').format('YYYY-MM-DD')
        if (type === 1) {
          params.startDate = moment().subtract(7, 'day').format('YYYY-MM-DD')
        }
        if (type === 2) {
          params.startDate = moment().subtract(15, 'day').format('YYYY-MM-DD')
        }
        if (type === 3) {
          params.startDate = moment().subtract(30, 'day').format('YYYY-MM-DD')
        }
      }
    }
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 好久好久都没画画了 但寒假一闲 就想拿起笔来 插上耳机,坐一上午 画画,最难的就是一开始动笔的时候 画着,画着 走...
    米果果nm阅读 3,114评论 3 2
  • 清明这几天,在安阳上课,中午休息,阳光特好,闭着眼睛听着赵照的歌—在冬天和奶奶一起晒太阳,似乎能感受到阳光照下来打...
    Climber_seven阅读 2,548评论 0 0
  • 忙碌了一大天,终于回来了,到家了,洗脸吃饭喽。干了一天的卯工。在萨尔图三建剪切了一天的铁。剪剪切切,长长短短。长的...
    张秀水阅读 2,833评论 0 0
  • 本文章涉及代码已放到github上annotation-study 1.Annotation为何而来 What:A...
    zlcook阅读 29,538评论 15 116
  • 20 学霸育儿师 上一篇:【孩子,不是妈妈不爱你!】第十三章 故事是这样的,钟辉清了清嗓子准备开讲了...... ...
    Suven阅读 3,146评论 2 8

友情链接更多精彩内容