用到的方法
/**
* 格式化时间
*/
function formatDate(date, format) {
let str = "",
year = addZero(date.getFullYear()),
month = addZero(date.getMonth() + 1),
day = addZero(date.getDate()),
hours = addZero(date.getHours()),
minutes = addZero(date.getMinutes()),
seconds = addZero(date.getSeconds());
switch (format) {
case 'y-m-d':
str = `${year}-${month}-${day}`;
break;
case 'y/m/d':
str = `${year}/${month}/${day}`;
break;
case 'y.m.d':
str = `${year}.${month}.${day}`;
break;
case 'h:m:s':
str = `${hours}:${minutes}:${seconds}`;
break;
case 'h:m':
str = `${hours}:${minutes}`;
break;
case 'y.m.d h:m:d':
str = `${year}.${month}.${day} ${hours}:${minutes}:${seconds}`;
break;
case 'y/m/d h:m:d':
str = `${year}/${month}/${day} ${hours}:${minutes}:${seconds}`;
break;
default:
str = `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
break;
}
return str;
};
/**
* 获取x天之前的日期
*/
function getDateMiusDay(days) {
var time = new Date().getTime();
var beforeTime = time - (60 * 60 * 24 * 1000 * days);
var newDate = new Date(beforeTime);
let str = "",
year = addZero(newDate.getFullYear()),
month = addZero(newDate.getMonth() + 1),
day = addZero(newDate.getDate());
str = `${year}-${month}-${day}`;
console.log('str-->',str);
return str;
};
/**
* 补零
*/
function addZero(data) {
let temp = data + '';
if (temp.length === 0) {
return '00'
} else if (temp.length === 1) {
return '0' + temp;
} else {
return data;
}
};
获取某年某月某日到某年某月某日之间的天数
function getDays(start, end) {
var startDate = new Date(formatDate(new Date(start.replace(/-/g, '/')), 'y-m-d'));
var endDate = new Date(formatDate(new Date(end.replace(/-/g, '/')), 'y-m-d'));
console.log(Math.floor((endDate - startDate) / (24 * 3600 * 1000)) + 1);
return Math.floor((endDate - startDate) / (24 * 3600 * 1000)) + 1;
};
测试
<body onload="getDays('2018-10-01','2018-10-07')">
</body>
结果