function zhouji(starts, end){
var start = moment(starts)
var end = moment(end)
var sign,sign1
var stats = moment(starts).hour('20').minute('00')
var end_ = moment(starts).add(1, 'd').hour('08').minute('00')
// console.log(end_)
// 判断开始时间是否在20点之后的时间段,判断开始时间是20之前(或等于)并且结束时间是20之后
if(start.isBetween(stats, end_, null, '[]') || start.isSameOrBefore(stats) && end.isSameOrAfter(stats)){
sign = 1
if(start.isAfter(stats)){
sign1 = 1
}else{
sign1 = 0
}
}else{
sign = 0
}
// 时间是否超过24小时
if(moment(end).diff(moment(start), 'mintes')/(3600*1000) <= 24){
// 开始时间是否是周末
if(start.format('d') == '0' || start.format('d') == '6'){
// 结束时间是周末
if(end.format('d') == '0' || end.format('d') == '6'){
var number = Math.round(end.diff(start, 'mintes')/(3600*1000))
return [number, 1, 2, start.format('d')]
//结束时间不是周末
}else{
var number = Math.round(end.startOf('day').diff(start, 'mintes')/(3600*1000))
return [number, 1, 2, start.format('d')]
}
// 开始时间不是周末
}else{
// 结束是周末
if(end.format('d') == '0' || end.format('d') == '6'){
var number = Math.round(end.diff(start, 'mintes')/(3600*1000))
var ends = end.format('d')
//结束时间不是整点0
if(end.format('H') != '0' || (end.format('H') == '0' && end.format('m') != '0')){
number = Math.round(end.diff(start.add(1, 'day').startOf('day'), 'mintes')/(3600*1000))
return [number, 1, 2, ends]
}
return [number, 1, 2, ends]
// 结束不是周末
}else{
var number = Math.round(end.diff(start, 'mintes')/(3600*1000))
if(sign){
if(!sign1){
if(end.isSameOrAfter(end_)){
number = Math.round(end_.diff(stats, 'mintes')/(3600*1000))
}else{
number = Math.round(end.diff(stats, 'mintes')/(3600*1000))
}
}else{
console.log(end.format('H'))
if(end.format('H') >= 8){
// var ends = moment(end).hour('06').minute('00')
number = Math.round(end_.diff(start, 'mintes')/(3600*1000))
}
}
if(start.format('D') == end.format("D")){
return [number, sign, 1]
}else if(start.format('D') < end.format("D")){
return [number, sign, 1]
}
}else{
return [number, sign, 1]
}
}
}
}else{
alert('时间最长不可超过24小时')
return false
}
}
console.log(zhouji('2021-05-17 13:00','2021-05-17 23:00'))
console