js实现日期的计算

今天在工作时需要在js中实现日期计算,如果采用最原始的计算方式,需要对天数、月份等进行判断,非常麻烦,然后百度时看到大神写的方法,很好用,借鉴地址如下:

https://www.cnblogs.com/zangdalei/p/4948812.html;

https://blog.csdn.net/Somnus_Sunshine/article/details/54344688?locationNum=5&fps=1;

下面是我自己的代码:

<script type="text/javascript">
     $('#field9518').change(function() {
          var beginTimeVal=$('#field38244').val();//获取页面中的付款时间,格式为2017-01-11类型
         // date='"'+beginTimeVal+'"'; //拼接字符串【如果不拼接会被当做减法运算,传入的结果就为2005】这个步骤我在用的时候注释掉了,我在用的时候加上这一步会报错,具体原因应该取决于从页面获取时间时该时间的格式
         days=$("#field9507").text().trim();//获取页面中的冲账期限(天)val()
         days1=$("#field9518").val();//获取页面中的延期天数
        daysInt=parseInt(days)+parseInt(days1);//强制转换为int类型【不转换不会报错但是时间不准确】
        var val=addDate(beginTimeVal,daysInt);//调用已经封装好的函数addDate $('#nextTime').val(val); })
        $("#field9508span").html(val);
        $("#field9508").val(val);
});

//日期加减法  date参数为计算开始的日期,days为需要加的天数   
//格式:addDate('2017-1-11',20)
function addDate(date,days){
     var d=new Date(date);

//核心就是setDate()方法, date参数是要进行加减的日期,days参数是要加减的天数,如果往前算就传入负数,往后算就传入正数 ,注意js中的月份是0-11月,计算的时候要加1
     d.setDate(d.getDate()+days);
     var m=d.getMonth()+1;
     return d.getFullYear()+'-'+m+'-'+d.getDate();
}

</script>

转载于:https://my.oschina.net/u/3913672/blog/2878194

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值