JS 计算几个月后的日期 与 两个日期相差几个月

本文介绍了如何使用JavaScript来计算指定日期加减几个月以及两个日期之间相差几个月的方法,包括从给定日期获取未来几个月的日期,计算当前日期与指定日期的月份数差,以及计算两个任意日期之间的月份数差。
摘要由CSDN通过智能技术生成

1.获取n个月后的日期(指定日期)

/**
 * @description: 获取n个月后的日期
 * @param {String} dtstr 日期
 * @param {String} n 几个月
 * @return: 日期
 */

addmulMonth(dtstr, n){        
  let s = dtstr.split("-");
  let yy = parseInt(s[0]);
  let mm = parseInt(s[1]); 
  let dd = parseInt(s[2]); 
  var num= mm + parseInt(n);

  if(num/12 > 1){
    yy += Math.floor(num/12) 
    mm = num % 12
  }else{
    mm += parseInt(n);
  }

  //获取当前日期中月的天数
  let newDate = new Date(yy,mm,0)
  //这里传入的0代表获取上一个月的最后一天;如果传1,则获得当月的第一天
  let days = newDate.getDate()
  //天数大于当前月
  if(dd > days){
    dd = days
  }

  return yy + "-" + mm  + "-" + dd
}

this.addmulMonth('2020-1-31',1)
//2020-2-31

2.获取n个月后的日期(当前日期)

/**
 * @description: 获取n个月后的日期
 * @param {String} n 几个月
 * @return: 日期
 */

a
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值