1.用prompt函数接受日期数据并进行数据转化
var year = prompt("请输入年份:")
year = parseInt(year);
var month = prompt("请输入月份:")
month = parseInt(month);
var day = prompt("请输入日期:")
day = parseInt(day);
2.要判断是一年的第几天要先判断是否是闰年,以此来判断2月的天数
var isLeapYear = (year % 4 == 0 && year % 100 != 0) || year % 400 == 0;
var answer = isLeapYear ? "闰年" : "平年";
3. 定义一个函数来计算前几个月的天数天数(天数=前几月的天数+当月已过的天数)
var date = 0;
function date_1(a) {
switch (a) {
case 0:
date = 0;
break;
case 1:
date = 31;
break;
case 2:
date = 31 + 29;
break;
case 3:
date = 31 + 29 + 31;
break;
case 4:
date = 31 + 29 + 31 + 30;
break;
case 5:
date = 31 + 29 + 31 + 30 + 31;
break;
case 6:
date = 31 + 29 + 31 + 30 + 31 + 30;
break;
case 7:
date = 31 + 29 + 31 + 30 + 31 + 30 + 31;
break;
case 8:
date = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31;
break;
case 9:
date = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30;
break;
case 10:
date = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31;
break;
case 11:
date = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30;
break;
case 12:
date = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30 + 31;
break;
default:
alert("请输入正确的月份")
break;
}
}
4.用if分支语句来计算是一年的第几天
if (answer == "闰年") {
date_1(month - 1);
date = date + day;
} else {
if (month > 2) {
date_1(month - 1);
date -= 1;
date = date + day;
} else {
if (month == 1) {
date = day;
} else {
date = 31 + day;
}
}
}
alert(date);
5.重难点总结
对switch case 的应用
6.全部代码
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script>
// 定义函数
var date = 0;
function date_1(a) {
switch (a) {
case 0:
date = 0;
break;
case 1:
date = 31;
break;
case 2:
date = 31 + 29;
break;
case 3:
date = 31 + 29 + 31;
break;
case 4:
date = 31 + 29 + 31 + 30;
break;
case 5:
date = 31 + 29 + 31 + 30 + 31;
break;
case 6:
date = 31 + 29 + 31 + 30 + 31 + 30;
break;
case 7:
date = 31 + 29 + 31 + 30 + 31 + 30 + 31;
break;
case 8:
date = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31;
break;
case 9:
date = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30;
break;
case 10:
date = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31;
break;
case 11:
date = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30;
break;
case 12:
date = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 30 + 31;
break;
default:
alert("请输入正确的月份")
break;
}
}
// 使用函数完成给定日期2024 04 20 这一天是本年第几天.
// 1.获取数据
var year = prompt("请输入年份:")
year = parseInt(year);
var month = prompt("请输入月份:")
month = parseInt(month);
var day = prompt("请输入日期:")
day = parseInt(day);
var isLeapYear = (year % 4 == 0 && year % 100 != 0) || year % 400 == 0;
var answer = isLeapYear ? "闰年" : "平年";
if (answer == "闰年") {
date_1(month - 1);
date = date + day;
} else {
if (month > 2) {
date_1(month - 1);
date -= 1;
date = date + day;
} else {
if (month == 1) {
date = day;
} else {
date = 31 + day;
}
}
}
alert(date);
</script>
</head>
<body>
</body>
</html>