- 06函数案例(输入,年月日,获取这个日期是这一年的第多少天)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>06函数案例</title>
<script>
//2月,2月是阳历年中的第二个月,平年有28天,闰年有29天。
//输入,年月日,获取这个日期是这一年的第多少天
//判断这个年份是不是闰年;并返回year,当true是是闰年时执行下面函数的day++;false就不执行
function isLeapYear(year){//LeapYear(闰年)
return year%4===0&&year%100!==0||year%400===0;
}
//年--月--日:2017年1月31日
function getDays(year,month,day){
//定义变量存储对应的天数
var days=day;
//如果用户输入的是一月份,没必要向后算天数,直接返回天数
if(month===1){
return days;
}
//代码执行到这里---说明用户输入的不是一月份
//用户输入的是4月份23日---1,2,3 +23
//定义一个数组,存储每个月份的天数
var months=[31,28,31,30,31,30,31,31,30,31,30,31];
//小于的是输入的月份-1 (累加输入当前月份的前几个月份的相加再加上当前的天数)
for(var i=0;i<month-1;i++){
days+=months[i];
}
//需要判断这个年份是不是闰年(year是闰年并且month是大于2月份)
//当判断是闰年时并且月份大于2,day++即day+1(天数加1)
if(isLeapYear(year)&&month>2){
days++;
}
return days;
}
//测试
console.log(getDays(2017,3,2));//61
console.log(getDays(2017,2,2));//33
console.log(getDays(2000,3,2));//62(2000年是闰年加一天)
//函数里面可以调用其他的函数
// function f1(){
// console.log("我是一个函数")
// f2();//函数的调用
// }
// function f2(){
// console.log("我也是一个函数")
// }
// f1();
</script>
</head>
<body>
</body>
</html>