javascript - 如何将日期移至下个月(固定日期)

标签 javascript

我有一个 javascript 格式的日期,格式为 dd/mm/yyyy。 我想从该日期计算另一个日期,并满足以下条件: 月份将从所选日期开始计算(一月将改为二月,十二月将改为一月,依此类推) 年份将相应改变 天永远是 16

我从这里开始(引用this question):

    var CurrentDate = new Date();
    CurrentDate.setMonth(CurrentDate.getMonth() + 1);
    console.log("Date after 1 months:", CurrentDate);

但需要将日期设置为 16 并检查是否考虑了边缘情况。 关于如何继续使用此代码有什么建议吗?

附注我正在寻找 Vanilla JS 或 jQuery 的解决方案,没有额外的库

最佳答案

试试这个..

function getDate16(d) {
  var date1 = d.split('/');
  var formattedDate1 =  date1[2] + '-' + date1[1] + '-' + date1[0] + 'T00:30:00.000Z';

  var CurrentDate = new Date(formattedDate1);
  CurrentDate.setDate(16);
  CurrentDate.setMonth(CurrentDate.getMonth() + 1);

  // Date formatting
  var date = CurrentDate.toISOString();
  var arr = date.substring(0, 10).split("-");
  date = arr[2] + '/' + arr[1] + '/' + arr[0];

  console.log("ISO format=", CurrentDate);
  console.log("dd/mm/yyyy format=", date);

}

getDate16("28/11/2019");
getDate16("31/12/2019");
getDate16("16/01/2020");

关于javascript - 如何将日期移至下个月(固定日期),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59089986/

相关文章:

javascript - 用于检查集合的第一个字符和最后一个字符是否不同的正则表达式

javascript - php多维数组到javascript数组的转换

javascript - jquery获取div的高度

Javascript 日历

javascript - 使用 angularjs 验证输入值

javascript - 在 NativeScript 应用程序中使用 Node 包

javascript - 如何,使用 JQUERY .EACH() 但不是用于元素,用于变量

javascript - 动态 JQuery UI 中的 Tablesorter 不起作用

javascript - 谷歌 oauth2 获取 id_token

javascript - 尝试根据具有指定类别的字段检查空白字段