方法一: 会返回对象
// 获取上个月的今天和今天的日期
const getLastMonth=()=> {
var now = new Date();
var year = now.getFullYear(); //getYear()+1900=getFullYear()
var month = now.getMonth() + 1; //0-11表示1-12月
var day = now.getDate();
var dateObj = {};
if (parseInt(month) < 10) {
month = "0" + month;
}
if (parseInt(day) < 10) {
day = "0" + day;
}
dateObj.now = year + '-' + month + '-' + day;
if (parseInt(month) == 1) { //如果是1月份,则取上一年的12月份
dateObj.last = (parseInt(year) - 1) + '-12-' + day;
return dateObj;
}
var preSize = new Date(year, parseInt(month) - 1, 0).getDate(); //上月总天数
if (preSize < parseInt(day)) { //上月总天数<本月日期,比如3月的30日,在2月中没有30
dateObj.last = year + '-' + month + '-01';
return dateObj;
}
if (parseInt(month) <= 10) {
dateObj.last = year + '-0' + (parseInt(month) - 1) + '-' + day;
return dateObj;
} else {
dateObj.last = year + '-' + (parseInt(month) - 1) + '-' + day;
return dateObj;
}
}
方法二 求30天前的日期
var date1 = new Date();
var date2 = new Date(date1);
date2.setDate(date1.getDate() - 30);
//30天前(月份判断是否小于10,小于10的前面+0)
var oldDay = `${date2.getFullYear()}-${date2.getMonth() + 1<10?`0${date2.getMonth() + 1}`:date2.getMonth() + 1}-${date2.getDate()}`;
//当前日期
var today = `${date1.getFullYear()}-${date1.getMonth() + 1<10?`0${date1.getMonth() + 1}`:date1.getMonth() + 1}-${date1.getDate()}`;