1.获取所有天数:废话不多说,直接上代码。函数getDateBetween(开始,结束){var结果=[];//使用传入参数的时间varstartTime=newDate(start);varendTime=newDate(结束);while(endTime-startTime>=0){letyear=startTime.getFullYear();让month=startTime.getMonth();month=month<9?'0'+(month+1):month+1;让day=startTime.getDate().toString().length==1?"0"+startTime.getDate():startTime.getDate();//加入数组result.push(year+"-"+month+"-"+day);//更新日期startTime.setDate(startTime.getDate()+1);}返回结果;}测试结果:console.log(getDateBetween('2020-9-12','2020-10-28'));2.获取所有月份:超详细注释函数getMonthBetween(start,end){//初始化编号组var结果=[];//拆分起始年月vars=start.split("-");//拆分结束年月vare=end.split("-");//获取时间对象varmin=newDate();varmax=newDate();//设置开始时间min.setFullYear(s[0],s[1]);//设置结束时间max.setFullYear(e[0],e[1]);//复制一个开始时间对象varcurr=min;//定义字符串varstr="";//开始时间早于结束时间while(curr<=max){//获取此时的月份varmonth=curr.getMonth();//如果月份为0,则表示12月if(month===0){str=(curr.getFullYear()-1)+"-"+12;}else{//normalmonthstr=curr.getFullYear()+"-"+(month<10?("0"+month):month);}//将今年添加到数组中result.push(str);//更新本次月份Curr.setMonth(month+1);}返回结果;}测试结果:console.Log(getmonthbetween('20182018-09','2020-02'));3.获取所有年份:functiongetYearBetween(start,end){varresult=[];//使用传入参数的时间varstartTime=newDate(start);varendTime=newDate(结束);while(endTime-startTime>=0){//获取年份letyear=startTime.getFullYear();//加入数组result.push(年);//更新日期startTime.setFullYear(startTime.getFullYear()+1);}返回结果;}测试结果:console.log(getYearBetween('2017','2020'));
