JavaScript自定义函数Datediy实现日期增加功能

ChatGPT4o 使用 ChatGPT 4o 回答

问题:

使用js写一个自定义函数"Datediy(参数1)",参数1是整数型,是对天数的增加,函数返回的字符串形式的当前日期"YYYY-MM-DD"格式

回答:

好的,下面是一个使用JavaScript编写的自定义函数 Datediy,该函数接受一个整数参数,表示要增加的天数,并返回当前日期增加这些天数后的日期,格式为 "YYYY-MM-DD"。

function Datediy(daysToAdd) {
    // 获取当前日期
    let currentDate = new Date();
    
    // 增加指定的天数
    currentDate.setDate(currentDate.getDate() + daysToAdd);
    
    // 获取年、月、日
    let year = currentDate.getFullYear();
    let month = (currentDate.getMonth() + 1).toString().padStart(2, '0'); // 月份从0开始,需要加1,并且补零
    let day = currentDate.getDate().toString().padStart(2, '0'); // 补零
    
    // 返回格式化的日期字符串
    return `${year}-${month}-${day}`;
}

// 示例使用
console.log(Datediy(5)); // 输出当前日期增加5天后的日期
console.log(Datediy(-3)); // 输出当前日期减少3天后的日期

解释

  1. 获取当前日期:使用 new Date() 获取当前日期和时间。
  2. 增加指定的天数:使用 setDate 方法来增加指定的天数。currentDate.getDate() 获取当前的日期,然后加上 daysToAdd
  3. 格式化日期:使用 getFullYeargetMonthgetDate 方法分别获取年、月、日。注意月份是从0开始的,所以需要加1。使用 padStart 方法确保月份和日期都是两位数。
  4. 返回结果:使用模板字符串 `${year}-${