此方法足矣
/**
* 获取当前日期加上指定天数之后的日期
* @param {String} time 日期格式为2020-03-19
* @param {Number} days 指定天数
* @result {String} 日期格式为2020年03月19日
*/function getNewData (time, days) {
if(days === undefined || days === '') {
days = 1;
}
let date =new Date(time);
date.setDate(date.getDate() + days);
let month = date.getMonth() + 1;
let day = date.getDate();
return date.getFullYear() + '年' + ('0'+ month).slice(-2) + '月' + ('0'+ day).slice(-2) + '日';
}
以下方法ios手机不兼容
Math.abs()函数参数如果是时间对象,可以将其转换为时间戳。
第一个参数是日期,第二个参数是要添加的天数。
function getNewDay(dateTemp, days) {
将传过来的日期用-进行分割,生成一个数组
var dateTemp = dateTemp.split("-");
//转换为MM-DD-YYYY格式
生成一个时间对象,构造函数的参数是将日期转换成MM-DD-YYYY格式,以实现兼容性。
var nDate = new Date(dateTemp[1] + '-' + dateTemp[2] + '-' + dateTemp[0]);
转换为时间戳,Math.abs()函数参数如果是时间对象,可以将其转换为时间戳。
var millSeconds = Math.abs(nDate) + (days * 24 * 60 * 60 * 1000);
通过时间戳,转换时间对象。
var rDate = new Date(millSeconds);
获取年份。
var year = rDate.getFullYear();
获取月份,之所以加1,因为getMonth()函数获取的月份比咱们普通意义上的月份值少1。
var month = rDate.getMonth() + 1;
如果月份是单数,那么在前面加0。
if (month < 10) month = "0" + month;
获取天。
var date = rDate.getDate();
如果天是个位数,那么前面添加0.
if (date < 10) date = "0" + date;
返回日期。
return (year + "-" + month + "-" + date);
}
console.log(getNewDay("2016-2-28",6))
获取当前日期加上指定天数之后的日期
最新推荐文章于 2025-03-18 15:36:29 发布