javascript - 如何使用 javascript 添加迄今为止的周数?

标签 javascript date-format

Javascript 绝对不是我的强项。我已经尝试了几个小时,但似乎在某处被日期格式困住了。

我有一个表单,其中用户选择了一个日期(dd/mm/yyyy),然后将采用该日期并添加 2 周,然后将日期复制到另一个表单字段。

我下面的最新尝试甚至没有添加日期,只是将一个表单字段中的选定日期复制到另一个表单字段,如果我选择“03/02/2012”,它会输出“Fri Mar 02 2012 00:00:00” GMT+0000(GMT 标准时间)',因此它以美国格式输出以及完整日期。如何让它以相同的格式输出并增加 2 周?

function LicenceToOccupy(acceptCompletionDate)
{
    var date1 = new Date(acceptCompletionDate);
    document.frmAccept.acceptLicence.value = date1;

}

最佳答案

你可以这样做:

const numWeeks = 2;
const now = new Date();
now.setDate(now.getDate() + numWeeks * 7);

或者作为一个函数

const addWeeksToDate = (dateObj,numberOfWeeks) => {
  dateObj.setDate(dateObj.getDate()+ numberOfWeeks * 7);
  return dateObj;
}

const numberOfWeeks = 2 
console.log(addWeeksToDate(new Date(), 2).toISOString());

你可以看到 fiddle here .

根据documentation in MDN

The setDate() method sets the day of the Date object relative to the beginning of the currently set month.

关于javascript - 如何使用 javascript 添加迄今为止的周数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11343939/

相关文章:

javascript - 将 WordPress 帖子 ID 传递到另一个页面

javascript - 使用 jQuery 选择器和 setSelectionRange 不是一个函数

javascript - CORS header 不适用于 Django 项目

javascript - Bootstrap 按钮在单击时不会突出显示

android - 基于android上用户区域设置的日期格式

RobotFramework:转换日期以获取月份名称

mysql - DATE_FORMAT 两次在 Where 子句中不起作用

javascript - IE 8 Jquery 焦点问题父 div 内的子项

Java SimpleDateFormat 将问题解析为 WEKA

java - 如何正确解析这种日期?