使用函数完成给定日期2024 04 20这一天是本年中的第几天

一.问题描述

判断是否是闰年;然后把过的月份的天数相加,在加上最后的天数;闰年比平年二月多一天。

二.结题思路

1.先输入 年/月/日

var year = prompt("请输入年份:")
year = parseInt(year)
var month = prompt("请输入月份:")
month = parseInt(month)
var day = prompt("请输入天数:")
day = parseInt(day)

2.用函数判断出输入的年月日是这一年中的那一天;定义一个date为零,就是来收取天数的。

function numberOfDays() {
				if (month == 1) {
					date = day
				}

				if (month == 2) {
					date = 31 + day
				}

				if (month == 3) {
					if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
						date = 31 + 29 + day
					} else {
						date = 31 + 28 + day
					}
				}

				if (month == 4) {
					if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
						date = 31 + 29 + 31 + day
					} else {
						date = 31 + 28 + 31 + day
					}
				}

				if (month == 5) {
					if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
						date = 31 + 29 + 31 + 30 + day
					} else {
						date = 31 + 28 + 31 + 30 + day
					}
				}

				if (month == 6) {
					if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
						date = 31 + 29 + 31 + 30 + 31 + day
					} else {
						date = 31 + 28 + 31 + 30 + 31 + day
					}
				}

				if (month == 7) {
					if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
						date = 31 + 29 + 31 + 30 + 31 + 30 + day
					} else {
						date = 31 + 28 + 31 + 30 + 31 + 30 + day
					}
				}

				if (month == 8) {
					if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
						date = 31 + 29 + 31 + 30 + 31 + 30 + 31 + day
					} else {
						date = 31 + 28 + 31 + 30 + 31 + 30 + 31 + day
					}
				}

				if (month == 9) {
					if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
						date = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 30 + day
					} else {
						date = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 30 + day
					}
				}

				if (month == 10) {
					if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
						date = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 30 + 31 + day
					} else {
						date = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 30 + 31 + day
					}
				}

				if (month == 11) {
					if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
						date = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 30 + 31 + 30 + day
					} else {
						date = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 30 + 31 + 30 + day
					}
				}

				if (month == 11) {
					if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
						date = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 30 + 31 + 30 + 31 + day
					} else {
						date = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 30 + 31 + 30 + 31 + day
					}
				}
			}

3.等到加第二个月天数的时候就要判断是否是闰年了;是闰年29天,不是则为28天

if (month == 3) {
					if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
						date = 31 + 29 + day
					} else {
						date = 31 + 28 + day
					}
				}

 4.把函数值返回,并输出

numberOfDays(year,month,day)
document.write("第"+date+"天")

 三.重难点分析

1.判断年是否是闰年在哪里判断;以及过去月份的天数加上本月天数

四.完整源码 

var year = prompt("请输入年份:")
			year = parseInt(year)
			var month = prompt("请输入月份:")
			month = parseInt(month)
			var day = prompt("请输入天数:")
			day = parseInt(day)
			// 
			date=0
			function numberOfDays(year,month,day) {
				if (month == 1) {
					date = day
				}

				if (month == 2) {
					date = 31 + day
				}

				if (month == 3) {
					if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
						date = 31 + 29 + day
					} else {
						date = 31 + 28 + day
					}
				}

				if (month == 4) {
					if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
						date = 31 + 29 + 31 + day
					} else {
						date = 31 + 28 + 31 + day
					}
				}

				if (month == 5) {
					if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
						date = 31 + 29 + 31 + 30 + day
					} else {
						date = 31 + 28 + 31 + 30 + day
					}
				}

				if (month == 6) {
					if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
						date = 31 + 29 + 31 + 30 + 31 + day
					} else {
						date = 31 + 28 + 31 + 30 + 31 + day
					}
				}

				if (month == 7) {
					if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
						date = 31 + 29 + 31 + 30 + 31 + 30 + day
					} else {
						date = 31 + 28 + 31 + 30 + 31 + 30 + day
					}
				}

				if (month == 8) {
					if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
						date = 31 + 29 + 31 + 30 + 31 + 30 + 31 + day
					} else {
						date = 31 + 28 + 31 + 30 + 31 + 30 + 31 + day
					}
				}

				if (month == 9) {
					if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
						date = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 30 + day
					} else {
						date = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 30 + day
					}
				}

				if (month == 10) {
					if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
						date = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 30 + 31 + day
					} else {
						date = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 30 + 31 + day
					}
				}

				if (month == 11) {
					if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
						date = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 30 + 31 + 30 + day
					} else {
						date = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 30 + 31 + 30 + day
					}
				}

				if (month == 11) {
					if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
						date = 31 + 29 + 31 + 30 + 31 + 30 + 31 + 30 + 31 + 30 + 31 + day
					} else {
						date = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 30 + 31 + 30 + 31 + day
					}
				}
			}
			numberOfDays(year,month,day)
			document.write("第"+date+"天")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值