JS获取日期周数(含年份)
1 function getYearWeek(dateString){
2 var da =dateString;//日期格式2015-12-30
3 //当前日期
4 var date1 = new Date(da.substring(0,4), parseInt(da.substring(5,7)) - 1, da.substring(8,10));
5 //1月1号
6 var date2 = new Date(da.substring(0,4), 0, 1);
7 //获取1月1号星期(以周一为第一天,0周一~6周日)
8 var dateWeekNum=date2.getDay()-1;
9 if(dateWeekNum<0){dateWeekNum=6;}
10 if(dateWeekNum<4){
11 //前移日期
12 date2.setDate(date2.getDate()-dateWeekNum);
13 }else{
14 //后移日期
15 date2.setDate(date2.getDate()+7-dateWeekNum);
16 }
17 var d = Math.round((date1.valueOf() - date2.valueOf()) / 86400000);
18 if(d<0){
19 var date3 = (date1.getFullYear()-1)+"-12-31";
20 return getYearWeek(date3);
21 }else{
22 //得到年数周数
23 var year=date1.getFullYear();
24 var week=Math.ceil((d+1 )/ 7);
25 return year+"年第"+week+"周";
26 }
27 }