- 06函數(shù)案例(輸入,年月日,獲取這個日期是這一年的第多少天)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>06函數(shù)案例</title>
<script>
//2月荠藤,2月是陽歷年中的第二個月惭等,平年有28天,閏年有29天展融。
//輸入,年月日,獲取這個日期是這一年的第多少天
//判斷這個年份是不是閏年;并返回year,當(dāng)true是是閏年時執(zhí)行下面函數(shù)的day++;false就不執(zhí)行
function isLeapYear(year){//LeapYear(閏年)
return year%4===0&&year%100!==0||year%400===0;
}
//年--月--日:2017年1月31日
function getDays(year,month,day){
//定義變量存儲對應(yīng)的天數(shù)
var days=day;
//如果用戶輸入的是一月份,沒必要向后算天數(shù),直接返回天數(shù)
if(month===1){
return days;
}
//代碼執(zhí)行到這里---說明用戶輸入的不是一月份
//用戶輸入的是4月份23日---1,2,3 +23
//定義一個數(shù)組,存儲每個月份的天數(shù)
var months=[31,28,31,30,31,30,31,31,30,31,30,31];
//小于的是輸入的月份-1 (累加輸入當(dāng)前月份的前幾個月份的相加再加上當(dāng)前的天數(shù))
for(var i=0;i<month-1;i++){
days+=months[i];
}
//需要判斷這個年份是不是閏年(year是閏年并且month是大于2月份)
//當(dāng)判斷是閏年時并且月份大于2,day++即day+1(天數(shù)加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年是閏年加一天)
//函數(shù)里面可以調(diào)用其他的函數(shù)
// function f1(){
// console.log("我是一個函數(shù)")
// f2();//函數(shù)的調(diào)用
// }
// function f2(){
// console.log("我也是一個函數(shù)")
// }
// f1();
</script>
</head>
<body>
</body>
</html>