1、 输入月份,显示当月的天数, 利用case穿透简化代码
var month = prompt("请输入月份");
var year = prompt("请输入年份");
// month是字符串类型 需要类型转换
switch(Number(month)){
case 1 :
case 3 :
case 5 :
case 7 :
case 8 :
case 10 :
case 12 :
alert("31天");
bresk;
case 4 :
case 6 :
case 9 :
case 11 :
alert("30天");
bresk;
case 2 :
//判断平年闰年
if(year % 4 === 0 && year % 100 !==0 || year % 400 === 0){
alert("29天");
}else{
alert("28天");
}
}
2、根据日期,判断这个日期是这一年的第几天。(使用switch 穿透编写) 例如: 2016,02,11,计算后结果为42
var date_string = prompt("请输入八位数日期");
// 拆分日
var date = date_string % 100;
// 拆分月
var months = parseInt(date_string / 100) % 100;
// 拆分年份
var years = parseInt(date_string / 10000);
// console.log(years,months,date);
// 根据年月日判定当前日期已经经过了多少天
var days = 0;
// 1.前面所有月份的日期总和
switch(months - 1){
case 11 :
days += 30;
case 10 :
days += 31;
case 9 :
days += 30;
case 8 :
days += 31;
case 7 :
days += 31;
case 6 :
days += 30;
case 5 :
days += 31;
case 4 :
days += 30;
case 3 :
days += 31;
case 2 :
// 判断平年闰年
if(years % 4 === 0 && years % 100 !==0 || years % 400 === 0){
days += 29;
}else{
days += 28;
}
case 1 :
days += 31;
}
// 2.加上当月的日期
days += date;
console.log(days);