/**
* @description 获取输入年份和月份的天数
* @param year {String | Number} 年份
* @param month {String | Number} 月份
* @returns {number}
*/
function getDaysByYearAndMonth (year, month) {
let isLeapYear = false
let day = 0
const yearInfo = Number.parseInt(year)
if (yearInfo % 400 === 0 || (yearInfo % 4 === 0 && yearInfo % 100 !== 0)
) {
isLeapYear = true
}
const monthNum = [1, 3, 5, 7, 8, 10, 12]
const isMonth = Number(month)
if (isMonth === 2) {
// 2月,并且判断当前年是否为闰年
if (isLeapYear) {
day = 29
} else {
day = 28
}
} else if (monthNum.includes(isMonth)) {
day = 31
} else {
day = 30
}
return day
}
/**
* @param data1 {String} 日期1 2021-12-1
* @param data2 {String} 日期2 2021-12-1
* @param total {Number} 期数
* @returns {Boolean}
*/
function data1AndData(data1,data2,total) {
let year1 = new Date(data1).getFullYear() //data1年份
let year2 = new Date(data2).getFullYear() //data2年份
let month1 = new Date(data1).getMonth() + 1 // data1的月份
let month2 = new Date(data2).getMonth() + 1 // data2的月份
let day1 = new Date(data1).getDate() // data1的天
let day2 = new Date(data2).getDate() // data2的天
let yearNum = year2 - year1
let monthNum = month2 - month1
let totalNum = yearNum * 12 + monthNum
let flag = '' //
let NumDays1 = getDaysByYearAndMonth(year1,month1)
let NumDays2 = getDaysByYearAndMonth(year2,month2)
if(day1 == 1 && day2 == NumDays2) {
totalNum = totalNum + 1
} else {
totalNum = totalNum
}
if( totalNum == total) { //周期相同
if(month1 == month2) {
if(day1 == 1 ) {
day2 == NumDays2 ? flag = true : flag = false
} else {
day1 - 1 == day2 ? flag = true : flag = false
}
}
else {
if(day1 == NumDays1) {
if(NumDays2 >= NumDays1 ) {
day1 - 1 == day2 ? flag = true : flag = false
}
else{
day2 == NumDays2 ? flag = true : flag = false
}
}
else { //day1 < NumDays1
if(day1 == 1 ) {
day2 == NumDays2 ? flag = true : flag = false
} else {
day1 - 1 == day2 ? flag = true : flag = false
}
}
}
}
else {
flag = false
}
return flag
}```
2021-12-1
最新推荐文章于 2024-09-14 18:52:56 发布