// 獲取起始日期獲取周以及對應日期段


    formatDig (num) {
      return num > 9 ? '' + num : '0' + num
    },
    formatDate (mill) {
      var y = new Date(mill)
      let raws = [
        y.getFullYear(),
        this.formatDig(y.getMonth() + 1),
        this.formatDig(y.getDate()),
        y.getDay() || 7
      ];
      let format = ['年', '月', '日 星期']
      return String.raw({ raw: raws }, ...format)
    },
    *createWeeks (startday, endday) {
      const ONE_DAY = 24 * 3600 * 1000
      let start = startday,
        end = endday
      let firstDay = start.getDay() || 7,
        lastDay = end.getDay() || 7
      let startTime =+ start,
        endTime = startTime + (7 - firstDay) * ONE_DAY,
        _endTime = end - (7 - lastDay) * ONE_DAY
      yield [startTime, endTime]
      startTime = endTime + ONE_DAY
      endTime = endTime + 7 * ONE_DAY
      while (endTime < _endTime) {
        yield [startTime, endTime]
        startTime = endTime + ONE_DAY
        endTime = endTime + 7 * ONE_DAY
      }
      yield [startTime, +end]
    },
    getyearweekdate () {
      let index = 1
      for (let i of this.createWeeks(new Date(2018, 0, 1), new Date(2019, 0, 1))) {
        let start = i[0],
          end = i[1]
        console.log(`第${this.formatDig(index++)}周 ${this.formatDate(start)}-${this.formatDate(end)}`)
      }
    },

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章