<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
</body>
</html>
<script>
var myDate = new Date();
// 获取今天是周几
var weekDay = myDate.getDay();
// 获取月份
var month = myDate.getMonth() + 1;
// 获取今天日
var today = myDate.getDate();
// 获取年份
var year = myDate.getFullYear()
var justifyYear = justifyYear(year);
function justifyYear(year) {
let a1=year%4==0;
let a2=year%100!=0;
let a3=year%400==0;
let result=(a1&&a2)||a3?true:false;
return result
}
// 获取本月有多少天
var monthDay = getMonthDay(month)
function getMonthDay(month) {
if(month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12){
return 31;
}else if(month == 4 || month == 6 || month == 9 || month == 11){
return 30;
}
if(justifyYear){
return 29;
}else{
return 28;
}
}
if(weekDay == 0){
weekDay = 7;
}
var flag = true;
justifyWeekStartEnd()
function justifyWeekStartEnd() {
// true 代表下周
if(flag){
// 这是下周的代码
// 现在距离周日还有多少天
var distanceWeekend = 7 - weekDay;
// 现在的月天 + 距离周日的天
var allMonthDay = today + distanceWeekend;
// 判断周日是否是下一个月
if(allMonthDay <= monthDay){
// 开始时间
console.log(year + "-" + month + "-" +allMonthDay)
// 结束时间
var distanceNextWeekend = distanceWeekend + 6;
var allNextMonthDay = today + distanceNextWeekend;
if(allNextMonthDay <= monthDay){
console.log(year + "-" + month + "-" +allNextMonthDay)
}else {
month ++;
if(month > 12){
year ++;
month = 1;
}
var allNextMonthDay = distanceNextWeekend - (monthDay - today);
console.log(year + "-" + month + "-" +allNextMonthDay)
}
}else{
month ++;
if(month > 12){
year ++;
month = 1;
}
var allMonthDay = distanceWeekend - (monthDay - today)
var allNextMonthDay = allMonthDay + 6;
console.log(year + "-" + month + "-" +allMonthDay)
console.log(year + "-" + month + "-" +allNextMonthDay)
}
}else{
// 这是下下周的代码
// 距离下下周日还有多少天
var distanceWeekend = 14 - weekDay;
var allMonthDay = today + distanceWeekend;
if(allMonthDay <= monthDay){
console.log(year + "-" + month + "-" +allMonthDay)
// 结束时间
var distanceNextWeekend = distanceWeekend + 6;
var allNextMonthDay = today + distanceNextWeekend;
if(allNextMonthDay <= monthDay){
console.log(year + "-" + month + "-" +allNextMonthDay)
}else {
month ++;
if(month > 12){
year ++;
month = 1;
}
var allNextMonthDay = distanceNextWeekend - (monthDay - today);
console.log(year + "-" + month + "-" +allNextMonthDay)
}
}else{
month ++;
if(month > 12){
year ++;
month = 1;
}
var allMonthDay = distanceWeekend - (monthDay - today)
var allNextMonthDay = allMonthDay + 6;
console.log(year + "-" + month + "-" +allMonthDay)
console.log(year + "-" + month + "-" +allNextMonthDay)
}
}
}
</script>