function getDayAll(starDay, endDay){
var arr =[];
var dates =[];
// 设置两个日期UTC时间
var db = new Date(starDay);
var de = new Date(endDay);
// 获取两个日期GTM时间
var s = db.getTime() - 24 * 60 * 60 * 1000;
var d = de.getTime() - 24 * 60 * 60 * 1000;
// 获取到两个日期之间的每一天的毫秒数
for(var i = s; i <= d;){
i = i + 24 * 60 * 60 * 1000;
arr.push(parseInt(i))}
// 获取每一天的时间 YY-MM-DD
for( var j in arr ){
var time= new Date(arr[j]);
var year = time.getFullYear(time);
var mouth =(time.getMonth() + 1)>=10?(time.getMonth() + 1):('0'+(time.getMonth() + 1));
var day = time.getDate()>=10?time.getDate():('0'+time.getDate());
var YYMMDD = year + '-' + mouth + '-' + day;
dates.push(YYMMDD)}return dates
},
let timeArr1 = this.getDayAll('2023-06-01', '2023-07-05');
// 相同年月分组
let newobj ={}
timeArr1.forEach(row=>{let key = row.slice(0,7)
newobj[key]= newobj[key]||[]
newobj[key].push(row)})
获取某年某月有多少天
function getDaysInMonth(year, month){return new Date(year, month, 0).getDate();}
console.log(getDaysInMonth(2024,01)) // 31
console.log(getDaysInMonth(2024,1)) // 31
判断二个日期在当前日期是处于什么状态(未执行、执行中、完成)
// 当前日期有没有在开始时期和结束日期之间,true的话就是执行中
isExecuting (start,end){let currentDate = new Date();let startDate = new Date(start);let endDate = new Date(end);let istrue = currentDate >= startDate && currentDate <= endDate;return istrue;},
// 判断当前日期是否小于开始日期,true的话就是未执行
isUnexecuted(start){let currentDate = new Date();let startDate = new Date(start);let istrue = currentDate < startDate;return istrue;},
// 判断当前日期是否大于结束日期,true的话就是完成
isFinished(end){let currentDate = new Date();let endDate = new Date(end);let istrue = currentDate > endDate;return istrue;},