js 根据三个已知定量求是今年的第几天 不使用for循环 switch
var year = 2021
var month = 3
var date = 1
code run here
结果:今年的第60天
中间代码不能能动
结果根据变量变化
用if判断是闰年还是非闰年的情况。
var year = 2021
var month = 3
var date = 1
if(year%4==0&&year%100!=0||year%400==0){
date=date+1;
}
if(month>1){
date+=31;
}
if(month>2){
date+=28;
}
if(month>3){
date+=31;
}
if(month>4){
date+=30;
}
if(month>5){
date+=31;
}
if(month>6){
date+=30;
}
if(month>7){
date+=31;
}if(month>8){
date+=31;
}
if(month>9){
date+=30;
}
if(month>10){
date+=31;
}
if(month>11){
date+=30;
}
console.log("今年的第"+date+"天")
var year = 2021;
var month = 3;
var date = 1;
let new_time = new Date(`${year}-${month}-${date}`) ;
let old_time = new Date(`${year}-1-1`)
console.log(parseInt((new_time-old_time)/1000/60/60/24)+1);
var days = 0;
switch(month){
case 1:
days = date;
break;
case 2:
days = 31 + date;
break;
case 3:
days = 31 + 28+ date;
break;
case 4:
days = 31 + 28+ +31 + date;
break;
case 5:
days = 31 + 28+ +31 +30+ date;
break;
case 6:
days = 31 + 28+ +31 +30+31+ date;
break;
....
}
function getDaysInYear(y, m, d) {
return (new Date(y, m - 1, d) - new Date(y, 0, 0)) / 86400000;
}
var year = 2021;
var month = 3;
var date = 1;
var day = getDaysInYear(year,month,date);
console.log(day);
输出60