美文网首页
JavaScript 获取今天、昨天、本周、本季度、本月、上月的

JavaScript 获取今天、昨天、本周、本季度、本月、上月的

作者: fourn熊能 | 来源:发表于2019-04-23 16:23 被阅读0次

    上代码:

      var now = new Date()
      var lastDay = new Date()
      lastDay.setDate(lastDay.getDate() - 1)
      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 lastMonth = lastMonthDate.getMonth()
      function 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)
      }
      function 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
      }
      function getWeekStartDate() {
        var weekStartDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek)
        return formatDate(weekStartDate)
      }
      function getWeekEndDate() {
        var weekEndDate = new Date(nowYear, nowMonth, nowDay + (6 - nowDayOfWeek))
        return formatDate(weekEndDate)
      }
      function getLastWeekStartDate() {
        var weekStartDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek - 7)
        return formatDate(weekStartDate)
      }
      function getLastWeekEndDate() {
        var weekEndDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek - 1)
        return formatDate(weekEndDate)
      }
      function getMonthStartDate() {
        var monthStartDate = new Date(nowYear, nowMonth, 1)
        return formatDate(monthStartDate)
      }
      function getMonthEndDate() {
        var monthEndDate = new Date(nowYear, nowMonth, getMonthDays(nowMonth))
        return formatDate(monthEndDate)
      }
      function getLastMonthStartDate() {
        var lastMonthStartDate = new Date(nowYear, lastMonth, 1)
        return formatDate(lastMonthStartDate)
      }
      function getLastMonthEndDate() {
        var lastMonthEndDate = new Date(nowYear, lastMonth, getMonthDays(lastMonth))
        return formatDate(lastMonthEndDate)
      }
    

    调用:

    switch (val) {
              case '全程':
                this.date.start = ''
                this.date.end = ''
                break
              case '今日':
                this.date.start = formatDate(now)
                this.date.end = formatDate(now)
                break
              case '昨日':
                this.date.start = formatDate(lastDay)
                this.date.end = formatDate(lastDay)
                break
              case '本周':
                this.date.start = getWeekStartDate()
                this.date.end = getWeekEndDate()
                break
              case '上周':
                this.date.start = getLastWeekStartDate()
                this.date.end = getLastWeekEndDate()
                break
              case '本月':
                this.date.start = getMonthStartDate()
                this.date.end = getMonthEndDate()
                break
              case '上月':
                this.date.start = getLastMonthStartDate()
                this.date.end = getLastMonthEndDate()
                break
    }
    

    相关文章

      网友评论

          本文标题:JavaScript 获取今天、昨天、本周、本季度、本月、上月的

          本文链接:https://www.haomeiwen.com/subject/wptbgqtx.html