一.假设有一个日期为(2022-11-04)这个日期为实时当前日期,我需要这个获取实时日期得前一天日期;
var dateTime=new Date("2022-11-04");
dateTime=dateTime.setDate(dateTime.getDate()-1);
console.log(dateTime) //结果为 毫秒

现在就需要把毫秒转换一下;
1.toLocaleDateString() 方法可根据本地时间把 Date 对象的日期部分转换为字符串,这个方法可以直接返回斜杠格式(容易有坑,小心点踩);如:2022/11/03
但是呢,需求又是不能使用斜杠,需要用中划线分开;只能在写代码喽;
var date = new Date(dateTime);
// 转为中划线得同时判断,开始时间小于10月份前边+零,大于等于10月份取消前边+0;
var taskStartTime;
if (date.getMonth() < 9) {
taskStartTime = date.getFullYear() + "-0" + (date.getMonth() + 1) + "-"
} else {
taskStartTime = date.getFullYear() + "-" + (date.getMonth() + 1) + "-"
}
if (date.getDate() < 10) {
taskStartTime += "0" + date.getDate()
} else {
taskStartTime += date.getDate()
}
taskStartTime;
二、加一天
与上面相似,把setDate方法中的-1变更为+1
2023-11-01 13:45:53
上述方法出现得问题是:本来是比最大日期大一天,或者是小一天。如果是最大时间为当月得最后一天,在使用这个方法,月份没有随着切换;这个方法更简单,方便;
var endDateObj = new Date(最大日期);//格式需要是例如: "2023-11-01"
this.StartModel = new Date(endDateObj.getTime() - 86400000 * 1);//86400000 一天得毫秒 *1,就是当前日期减一天,如果是需要自定义几天,修改就可
浙公网安备 33010602011771号