1、函数逻辑 function changeToNextDay(startDate:any,dayIn:number){ var date=startDate.split('-'); 分割出年月日 var d=new Date(); d.setFullYear(date[0],date[1]-1,date[2]); var myDate=new Date(d.getTime()+dayIn*24*60*60*1000); var year=myDate.getFullYear(); var month=myDate.getMonth()+1; var day=myDate.getDate(); var CurrentDate=year+'-'; if(month>=10) { CurrentDate=CurrentDate+month+"-"; } else { CurrentDate=CurrentDate+"0"+month+"-"; } if(day>=10) { CurrentDate=CurrentDate+day; } else { CurrentDate=CurrentDate+"0"+day; } console.log(CurrentDate,d); return CurrentDate; } 2、函数调用 var startDate="2016-11-12"; var dayIn=-7;changeToNextDay(startDate,dayIn); 程序输出:2016-11-05 3、根据当前日期切换上一周和下一周//切换到上一周或下一周 changeToNextWeek(currentDate:any,changeType:number){ var days=[]; var lastDay; var firstDay; var date=currentDate.split('-'); var d=new Date(); d.setFullYear(date[0],date[1]-1,date[2]); var myDate=new Date(d.getTime()); var year=myDate.getFullYear(); var month=myDate.getMonth()+1; var day=myDate.getDate(); var weekDay=myDate.getDay(); if(changeType<0){ if(weekDay==0){ firstDay=this.changeToNextDay(currentDate,-13); lastDay=this.changeToNextDay(currentDate,-7); }else{ firstDay=this.changeToNextDay(currentDate,-(6+weekDay)); lastDay=this.changeToNextDay(currentDate,-weekDay); } }else{ if(weekDay==0){ firstDay=this.changeToNextDay(currentDate,1); lastDay=this.changeToNextDay(currentDate,7); }else{ firstDay=this.changeToNextDay(currentDate,8-weekDay); lastDay=this.changeToNextDay(currentDate,14-weekDay); } } // 当时间为本周时 var curDate=new Date(); var year3=curDate.getFullYear(); var month3=curDate.getMonth()+1; var day3=curDate.getDate(); days[0]=firstDay; if(year3==year && month3==month && day3==day){ days[1]=year3+'-'+month3+'-'+day3; }else{ days[1]=lastDay; } return days; }
从当前日期加减N天后,得到新日期;上一周和下一周切换。
最新推荐文章于 2024-05-06 10:04:46 发布