function getWeekAllDate(start, end) {
let dateArr = []
let startArr = moment(start).format("YYYY-MM-DD").split('-')
let endArr = moment(end).format("YYYY-MM-DD").split('-')
let db = new Date()
db.setUTCFullYear(startArr[0], startArr[1] - 1, startArr[2])
let de = new Date()
de.setUTCFullYear(endArr[0], endArr[1] - 1, endArr[2])
let unixDb = db.getTime()
let unixDe = de.getTime()
let stamp
const oneDay = 24 * 60 * 60 * 1000;
for (stamp = unixDb; stamp <= unixDe;) {
dateArr.push(moment(new Date(parseInt(stamp))).format("YYYY/MM/DD"))
stamp = stamp + oneDay
}
return dateArr
}
let newArr = getWeekAllDate("2021-06-01", "2021-07-31")
let sArr = []
newArr.forEach((item, index) => {
if (new Date(item).getDay() == 6) {
if (index < 5) {
sArr.push(newArr.slice(0, index))
} else {
sArr.push(newArr.slice(index - 5, index))
}
if (newArr.length - index <= 5) {
sArr.push(newArr.slice(index + 2, newArr.length))
}
}
})
let N = ['一', '二', '三', '四', '五', '六', '七', '八', '九', '十']
const test = sArr.map((item, index) => {
return {
title: `第${N[index]}梯次 | ${moment(new Date(item.shift())).format("MM/DD")}~${moment(new Date(item.pop())).format("MM/DD")}`,
startTime: item.shift(),
endTime: item.pop()
}
})
console.log(test)
console