js根据指定日期获取某个月后的日期(计算合同试用期)

  /* 
    月份加减
    应根据合同约定,从入职之日起计算一个月整,也就是从入职当日作为第一天,到第二个月相应日期的前一天算一个月,以此推算
     */
calculateMonths(yearMonthDay, monthNum) {
      let arr = yearMonthDay.split('-')
      let year = parseInt(arr[0])
      let month = parseInt(arr[1])
      let day = parseInt(arr[2])
      month = month + monthNum
      if (month > 12) {
        //月份加
        let yearNum = parseInt((month - 1) / 12)
        month = month % 12 == 0 ? 12 : month % 12
        year += yearNum
      } else if (month <= 0) {
        //月份减
        month = Math.abs(month)
        let yearNum = parseInt((month + 12) / 12)
        year -= yearNum
      }
      month = month < 10 ? '0' + month : month
      const ts = new Date(year + '-' + month + '-' + day).valueOf()
      const dayTs = 24 * 60 * 60 * 1000
      const time = moment(ts - dayTs).format('YYYY-MM-DD') //获得前一天的日期
      return time
    },

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值